VB.Net的VB6记录集代码

VB.Net的VB6记录集代码,vb.net,vb6,recordset,Vb.net,Vb6,Recordset,我正在将别人的旧代码从VB6 windows应用程序更新为VB.Net web应用程序。我理解旧代码,但不确定如何将其转换为.Net记录集 myStoredProcedure = "sp_WritevPayrollCurrent" myCurrentPast = "'N'" myStoredProcedure = "sp_ObtainSubClassID" myClassName = "Payroll Major" mySubClassName

我正在将别人的旧代码从VB6 windows应用程序更新为VB.Net web应用程序。我理解旧代码,但不确定如何将其转换为.Net记录集

myStoredProcedure = "sp_WritevPayrollCurrent"
        myCurrentPast = "'N'"
    myStoredProcedure = "sp_ObtainSubClassID"
       myClassName = "Payroll Major"
       mySubClassName = "New Hire"
       Set rs = TgetReadResultsetWithParms(myClassName, mySubClassName, (myStoredProcedure))
另外,我不确定两次声明“myStoredProcedure”会发生什么,或者这可能是一个错误吗

TgetReadResultsTwithParms函数如下所示(某些情况下进行了编辑以释放空间):


VB6代码正在使用
远程数据对象
。我认为您必须阅读以了解VB6正在做什么,然后使用ADO.Net在VB.Net中重写以实现相同的功能。不幸的是,恐怕没有现成的备忘单显示RDO与ADO.Net的比较。对于ADO-ADO.Net,有以下几种方法


或者,您可以在.Net项目中添加对远程数据对象的引用—您可以在.Net中使用COM对象—然后使用相同的代码。如果有大量的旧代码,这可能是一种使任务更易于管理的实用方法,尽管这会使其他可能习惯于ADO.Net的程序员更难理解代码。如果有能力,最好重写。

您使用的是什么数据库引擎?微软接入?Sql Server?还有别的吗?
Dim en As rdoEnvironment
Dim cn As rdoConnection
Dim rq As rdoQuery

 rdoDefaultCursorDriver = rdUseServer
'open a connection to the tstdbexecutive database using DSNless connections
Set en = rdoEnvironments(0)
Set cn = connectionstring stuff here
Select Case myStoredProcedure
    'create reusable rdoQuery and Call SQL server stored procedure.
    Case "sp_ObtainClassID"
        Set rq = cn.CreateQuery("", "{call " & cstDatabaseName & ".dbo.sp_ObtainClassID(?)}")
    Case Else
        Set rq = cn.CreateQuery("", "{call " & cstDatabaseName & ".dbo." & myStoredProcedure & "(?)}")
End Select
'set the input argument value for the store procedure.
rq(0) = myParm1
'open the Resultset and pass it back to calling procedure
Set TgetReadResultsetWithParm = rq.OpenResultset(rdOpenKeyset, rdConcurReadOnly)