gpt4 book ai didi

vb.net - 出现错误“表达式不产生值

转载 作者:行者123 更新时间:2023-12-02 07:03:06 26 4
gpt4 key购买 nike

我对使用 Visual Basic 比较陌生,并且在从数据库填充列表框时遇到问题。出现的错误是表达式不产生值。

这是我的表单中的代码:

Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Populate Blu Ray and DVD listboxes

Dim objMovies As New clsMovies

objMovies.Select_BR_List()
objMovies.Select_Dvd_List()

For Each strBluRay As String In objMovies.Select_BR_List
lstBluRay.Items.Add(strBluRay)
Next

For Each strDVD As String In objMovies.Select_Dvd_List
lstDvd.Items.Add(strDVD)
Next
End Sub

这是该类的代码:

Public Sub Select_Dvd_List()
Dim objConnection As New SqlCeConnection(mstrCN)

'Create SQL statement
mstrSQL = "Select * from Dvd"
'Instantiate command
Dim objCommand As New SqlCeCommand(mstrSQL, objConnection)

'open Database
objCommand.Connection.Open()

'Instantiate Data Reader
Dim objDataReader As SqlCeDataReader

'Execute SQL
objDataReader = objCommand.ExecuteReader()

'read Sql results
Do While (objDataReader.Read)
mlstDvd.Add(objDataReader.Item("dvdTitle").ToString)
Loop

'Close
objCommand.Dispose()
objDataReader.Close()
objDataReader.Dispose()
objConnection.Close()
objConnection.Dispose()
End Sub

最佳答案

问题是您正在尝试枚举 Sub。在 VB.NET 中,方法可以是不返回值的 Sub,也可以是返回值的 Function。您的 Select_Dvd_List 方法是 Sub,因此它不返回值。不过你有这个代码:

For Each strDVD As String In objMovies.Select_Dvd_List

这是尝试循环 Select_Dvd_List 的结果,但是,正如我们已经确定的那样,Select_Dvd_List 没有结果。在该方法中,您将向 mlstDvd 添加项目,因此循环应该是:

For Each strDVD As String In objMovies.mlstDvd

关于vb.net - 出现错误“表达式不产生值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22124861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com