如何将VB6的记录集代码迁移到VB.Net中?

2026-05-06 13:112阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计385个文字,预计阅读时间需要2分钟。

如何将VB6的记录集代码迁移到VB.Net中?

我将VB6+Windows应用程序中的某些旧代码更新为VB.Net Web应用程序。我理解旧代码,但不确定如何将其转换为.Net记录集。例如:

csharpmyStoredProcedure=sp_WritevPayrollCurrent;myCurrentPast=N;myStoredProced=

转换示例:

csharpstring myStoredProcedure=sp_WritevPayrollCurrent;string myCurrentPast=N;SqlCommand myCommand=new SqlCommand(sp_WritevPayrollCurrent, myConnection);myCommand.Parameters.AddWithValue(@CurrentPast, myCurrentPast);

我正在将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”被宣告两次会发生什么,或者这可能是一个错误?

TgetReadResultsetWithParms函数如下(一些案例被编辑以释放空间):

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) VB6代码使用远程数据对象.我想你必须阅读 the documentation以了解VB6正在做什么,然后使用ADO.Net在VB.Net中重写以实现相同的功能. AFAIK没有方便的备忘单,显示RDO与ADO.Net的比较,遗憾的是. ADO-ADO.Net有 some.

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

如何将VB6的记录集代码迁移到VB.Net中?

本文共计385个文字,预计阅读时间需要2分钟。

如何将VB6的记录集代码迁移到VB.Net中?

我将VB6+Windows应用程序中的某些旧代码更新为VB.Net Web应用程序。我理解旧代码,但不确定如何将其转换为.Net记录集。例如:

csharpmyStoredProcedure=sp_WritevPayrollCurrent;myCurrentPast=N;myStoredProced=

转换示例:

csharpstring myStoredProcedure=sp_WritevPayrollCurrent;string myCurrentPast=N;SqlCommand myCommand=new SqlCommand(sp_WritevPayrollCurrent, myConnection);myCommand.Parameters.AddWithValue(@CurrentPast, myCurrentPast);

我正在将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”被宣告两次会发生什么,或者这可能是一个错误?

TgetReadResultsetWithParms函数如下(一些案例被编辑以释放空间):

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) VB6代码使用远程数据对象.我想你必须阅读 the documentation以了解VB6正在做什么,然后使用ADO.Net在VB.Net中重写以实现相同的功能. AFAIK没有方便的备忘单,显示RDO与ADO.Net的比较,遗憾的是. ADO-ADO.Net有 some.

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

如何将VB6的记录集代码迁移到VB.Net中?