Vb.net 创建类的实例时出错
我试图为arrayList分配一个类的实例,但它给出了以下错误Vb.net 创建类的实例时出错,vb.net,oop,Vb.net,Oop,我试图为arrayList分配一个类的实例,但它给出了以下错误 Object reference not set to an instance of an object. 这是我分配它的代码 Public memberList As ArrayList Public Sub LoadUser() Dim userId As Integer = 0 Dim userData As Data.DataTable = oExecuteSimpleQuery_DT("QA", "SELECT
Object reference not set to an instance of an object.
这是我分配它的代码
Public memberList As ArrayList
Public Sub LoadUser()
Dim userId As Integer = 0
Dim userData As Data.DataTable = oExecuteSimpleQuery_DT("QA", "SELECT * FROM Member")
If userData IsNot Nothing Then
For Each user As Data.DataRow In userData.Rows
If memberList(userId) Is Nothing Then
memberList(userId) = 1
End If
memberList(userId) = New clsMember(user("UserID"), user("Firstname"), user("Secondname"), user("Username"), user("Password"), user("Email"), user("Rights"))
userId += 1
Next
End If
End Sub
试试这个:
Public memberList as New List(Of clsMember)
Public Sub LoadUser()
Dim userId As Integer = 1
Dim userData As Data.DataTable = oExecuteSimpleQuery_DT("QA", "SELECT * FROM Member")
If userData IsNot Nothing Then
For Each user As Data.DataRow In userData.Rows
memberList.Add(New clsMember(user("UserID"), user("Firstname"), user("Secondname"), user("Username"), user("Password"), user("Email"), user("Rights"))
userId += 1
Next
End If
End Sub
试试这个:
Public memberList as New List(Of clsMember)
Public Sub LoadUser()
Dim userId As Integer = 1
Dim userData As Data.DataTable = oExecuteSimpleQuery_DT("QA", "SELECT * FROM Member")
If userData IsNot Nothing Then
For Each user As Data.DataRow In userData.Rows
memberList.Add(New clsMember(user("UserID"), user("Firstname"), user("Secondname"), user("Username"), user("Password"), user("Email"), user("Rights"))
userId += 1
Next
End If
End Sub
在问题中显示的代码中,您确实声明了
memberList
变量,但没有创建实例。要解决此错误,请将第一行更改为:
Public memberList As New ArrayList()
两个侧节点:
- 不要使用
,而是查看。它提供几乎相同的功能,但属于强类型ArrayList
是一个值得理解的常见错误。有关原因和修复方法的详细信息,请参见此NullReferenceException
memberList
变量,但没有创建实例。要解决此错误,请将第一行更改为:
Public memberList As New ArrayList()
两个侧节点:
- 不要使用
,而是查看。它提供几乎相同的功能,但属于强类型ArrayList
是一个值得理解的常见错误。有关原因和修复方法的详细信息,请参见此NullReferenceException