我正在将一个VB.NET web应用程序从Visual Studio 2005(.NET 2.0)迁移到Visual Studio 2008(.NET 3.5)的过程中,虽然这很简单,但我遇到了一个问题,需要一些时间才能解决。
Dim serviceArray = New SecurityLayer.Model.Service()
serviceArray = new SecurityLayer.SecurityBusinessController.GetServices(userId)
它在VS2005/.NET2.0中编译,但在VS2008/.NET3.5中失败,并出现以下错误:
“SecurityLayer.Model.Service的一维数组”类型的值无法转换为“SecurityLayer.Model.Service”
Dim serviceArray = New SecurityLayer.Model.Service(){}
serviceArray = new SecurityLayer.SecurityBusinessController.GetServices(userId)
在更新此声明的所有实例之后,代码现在将按预期构建和运行。
Option Explicit和Option Strict在这两个ide中是相同的,所以不可能是那样的(或者至少我是这么认为的)。
所以我的问题是,为什么它是在VS2005/.NET2.0中构建的,而不是在VS2008/.NET3.5中构建的?