为什么我得到InvalidCastException将字符串传递给VariantType参数?

时间:2010-02-15 13:19:23

标签: asp.net drop-down-menu .net

我有:

Protected Sub SepInsert(ByVal mriId As VariantType, 
                        ByVal aeId As VariantType, 
                        ByVal absId As VariantType)
...
End Sub

并希望使用DropDownList选项调用它:

Protected Sub cmdNewPrelinkedMri_Click(ByVal sender As Object, 
                                       ByVal e As System.EventArgs
                                      ) Handles cmdNewPrelinkedMri.Click
    SepInsert(ddlMriUnassigned.SelectedValue, -1, -1)
End Sub

其中ddl选择的值当然是一个字符串(例如,“0412B0”)。

我收到一个InvalidCastException:从字符串“0412B0”到“Integer”类型的转换无效。当参数声明为VariantType?

时,为什么要转换为'Integer'

我误解或做错了什么?谢谢,

克里斯

1 个答案:

答案 0 :(得分:1)

SepInsert中的一些声明试图将mriId强制转换为int。如果找不到,请显示整个代码。