【发布时间】:2019-02-14 09:59:54
【问题描述】:
我正在将 vb6 应用程序转换为 vb.net,其中 .eof 和 .bof 用作条件。我不明白如何在 vb.net 中执行这些条件
sSql = "Select * From SPCsetup"
Set dbConn = New ADODB.Connection
Call openDBconn(dbConn)
Set rsConn = dbConn.Execute(sSql)
If rsConn.EOF Or rsConn.BOF Then
bFlag = False
Else
bFlag = True
End If
【问题讨论】:
-
也许如果您能解释该代码应该实现什么,我们可以描述在 VB.NET 中实现它的最佳方式。看起来您正在遍历 Recordset。如果您正在迁移数据访问代码,您是在尝试尽可能接近地使用 VB6 代码,还是在编写新的 ADO.NET 代码?无论您在做什么,始终对问题提供完整且清晰的解释。
-
@jmcilhinney 我正在编写一个新代码,我已经更新了问题,请查看
-
我仍然不知道
rsConn是什么,我只是猜测它是一个记录集。我认为你需要重新审视你对“FULL and CLEAR”意味着什么的理解。如果您正在编写新代码,那么您所拥有的就无关紧要了,因为您将在 VB.NET 甚至实体框架中使用 ADO.NET。您应该了解数据访问在 VB.NET 中的工作原理,然后编写最好的代码来实现您的要求。如果您在这样做时遇到了实际问题,那么是时候发布有关该问题的问题了。 -
@jmcilhinney 我是 vb.net 的新手,所以我不太了解它,是的 rsConn 是一个记录集,它存储来自查询的值。我没有得到的是这会产生什么结果 if(rsconn.eof and rsconn.bof ) 有没有办法在 vb.net 中做到这一点以及我如何执行它
-
If rsConn.EOF Or rsConn.BOF =>这意味着:如果没有返回记录,则bFlag = False否则bFlag = True。您可以使用SELECT COUNT查询,评估ExecuteScalar命令的结果。请参阅文档OleDbCommand 和OleDbConnection。
标签: vb.net vb6 vb6-migration