我正在尝试编写一个类库,我收到以下错误:"类型'WorkMateLib.Login'的值无法转换为'WorkMateLib.Login'的1维数组'"
类的代码如下:
Public Class Logins
Public CurrentUser As Login()
Public Sub New()
CurrentUser = New Login()
End Sub
Public Function Authenticate(ByVal id As String, ByVal pw As String)
Dim adpt As New WorkMateDataSetTableAdapters.LoginsTableAdapter
For Each k As WorkMateDataSet.LoginsRow In adpt.GetDataByUserName(id)
If String.Equals(k.UserPW, pw) Then
CurrentUser = New Login(k.UserName, k.UserPW, k.UserType)
Return CurrentUser
Exit Function
End If
Next
CurrentUser = Nothing
Return Nothing
End Function
End Class
Public Class Login
Private _UserName As String
Private _UserPW As String
Private _UserType As String
Property UserName
Get
Return _UserName
End Get
Set(value)
_UserName = value
End Set
End Property
Property UserPW
Get
Return _UserPW
End Get
Set(value)
_UserPW = value
End Set
End Property
Property UserType
Get
Return _UserType
End Get
Set(value)
_UserType = value
End Set
End Property
Public Sub New()
UserName = ""
UserPW = ""
UserType = ""
End Sub
Public Sub New(ByVal Namee As String, ByVal pw As String, ByVal typee As String)
UserName = Namee
UserPW = pw
UserType = typee
End Sub
End Class
Run Code Online (Sandbox Code Playgroud)
我在这里先向您的帮助表示感谢.
它应该是
Dim CurrentUser as Login
Run Code Online (Sandbox Code Playgroud)
添加()到Type的末尾会将其更改为Type的Array.
你应该真的将变量声明为
Dim CurrentUser As Login = New Login
Run Code Online (Sandbox Code Playgroud)
因为这将实例化Login对象的实例并将其分配给CurrentUser变量.目前,您只是创建一个Login类型但不赋予其值的变量.