我得到錯誤我在哪裏錯過了這個VB.NET函數中的'Return'語句?
函數'Login'不會在所有代碼路徑上返回一個值。你是否錯過了'Return'聲明?
我在某種程度上瞭解Stack的各種問題 溢出。我的困惑是,我對所有代碼路徑都有返回值 - 是嗎?
Public Function Login(Username As String, Password As Integer) As Integer
Dim tableAdapter As New AcquisitionPortalDataSetTableAdapters.ITVF_LoginLogoutTableAdapter
Dim dt As DataTable = tableAdapter.GetData(Username, Convert.ToInt32(Password))
Try
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
For Each dr In dt.Rows
If dr("LAN").ToString = Username AndAlso Convert.ToInt32(dr("Code")) = Password Then
GlobalVariables.iUserType = Convert.ToInt32(dr("Code"))
GlobalVariables.iUserID = Convert.ToInt32(dr("ID"))
Return 1
Else
Return 0
End If
Next
Else
Return 0
End If
Catch
Return 0
End Try
End Function
我已經過了很多次,每一個陳述都可以被評估,據我所知。任何人都可以提出其他建議,如果可能,最好有一個簡短的解釋,所以我明白未來?
將'登錄= 0'放在函數的第一行。 – 2014-12-19 11:13:12
是的,這工作,謝謝。 – d3m0n1cd4rkn355 2014-12-19 11:15:15
這很好,但我也在等待一個合理的解釋。 – 2014-12-19 11:21:18