我正在研究一个项目(在VB.net中),该项目包含一个包含有关产品信息的数据库,一个产品对象类,一个产品列表对象类以及一个使用我的存储过程从数据库中提取所有行的DB类(每行都被构造成一个产品,这些产品将被放入产品列表类中的数组列表中)。到目前为止,它似乎一直有效,但我的数据库类出现错误却令我感到困惑。
Dim TempList = New ArrayList
Dim sqlDR As SqlClient.SqlDataReader = PDM.Data.SqlHelper.ExecuteReader(GLOBALS.ConnectionString, "sp_GetAllProducts")
If sqlDR.HasRows Then
While sqlDR.Read()
Dim Prod As New Product
Prod.PK_ProductID = sqlDR(0)
Prod.MicrobeadStatus = sqlDR(1)
Prod.FK_BrandID = sqlDR(2)
Prod.FK_TypeID = sqlDR(3)
Prod.FK_Product = sqlDR(4)
Prod.PK_BrandID = sqlDR(5)
Prod.BrandName = sqlDR(6)
Prod.PK_Products = sqlDR(7)
Prod.ProductName = sqlDR(8)
Prod.PK_TypeID = sqlDR(9)
Prod.Type = sqlDR(10)
TempList.Add(Prod)
End While
End If
在此示例代码的第5行中,“产品”(即我的Product类)一词表示我没有为任何参数指定参数。PK_ProductID,MicrobeadStatus等都已声明,并与Product类中的构造函数放在一起。到目前为止,我一直没有尝试过的方法似乎无济于事。有任何想法吗?
正如@Plutonix在评论中建议的那样,听起来好像Product
没有无参数的构造函数。如果您的Product
构造函数只有参数,则必须为每个参数提供一个参数,例如
Dim Prod As New Product(sqlDR(0), ...)
如果您希望能够在不提供任何参数的情况下创建实例,则必须声明一个无参数的构造函数,例如
Public Sub New()
End Sub
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句