Option Strict ON禁止操作符类型为object的操作数。

时间:2017-01-23 22:26:34

标签: vb.net

我有这样的代码,刚刚添加了

Option Explicit On
Option Strict On

到文件的顶部。

   For Each dr As DataRow In issues.Rows
       _issuesList &= ", " & dr(table.PKeys(0).Name)
       If issueError.PROBLEM = "MISSNG" Then _myList &= ", " & dr(issueError.NotFound)
   Next

现在它没有编译并在代码的这一部分给出错误:

dr(table.PKeys(0).Name)

错误:Option Strict ON prohibits operands of type object for operator &

我已用C#编码,只需对VB.NET代码进行一些更改,这是什么错误以及如何解决?

1 个答案:

答案 0 :(得分:3)

为了详细说明我在评论中提到的内容,Option Strict强制执行强类型数据类型,并且不会隐式地将值转换为string,int等。来自datarow值的值是泛型类型,如果没有选项严格打开,通常会隐式转换。抛出的错误基本上表明您正在尝试将字符串连接到数据行值,而不是两个字符串。