The RDO data access model can be mapped to .NET using 2 different methodologies, the behavior of this particular option is described as follows:
The member transformation for this data access technology is described as follows:
Class | Maps To |
RDO.rdoConnection | System.Data.SqlClient.SqlConnection |
RDO.rdoResultset | System.Data.DataSet |
RDO.rdoColumns | The property “rdoColumns.item” is the only supported member of this class. |
RDO.rdoError | System.Data.SqlClient.SqlError |
RDO.Parameter | System.Data.SqlClient.SqlParameter |
RDO.Parameters | System.Data.SqlClient.SqlParameterCollection |
RDO.rdoPreparedStatement | System.Data.SqlClient.SqlCommand |
RDO.rdoQuery | System.Data.SqlClient.SqlCommand |
The RDO to ADO.NET upgrade also covers the possibility to use the MSRDC control for this particular technology. The mappings are described below:
Class | Maps to |
MSRDC.MSRDC | Artinsoft.VB6.Gui.DataHelper |
In addition, conversion rules apply changes over specific pattern in the source code related to RDO code:
Visual Basic 6 pattern | Maps to |
RDO Resultset loops |
|
A brief source sample of this feature:
Public recRecordset As RDO.rdoResultset Public RDOConnection As New RDO.RDOConnection Private Sub Form_Load() Set RDOConnection = New RDO.RDOConnection RDOConnection.CursorDriver = rdUseClientBatch RDOConnection.Connect = "uid=ftt_uwee;pwd=fttuwee;driver={SQL SERVER}; server=AISCRIT11\FTT;database=Northwind;" RDOConnection.EstablishConnection rdDriverNoPrompt, False Set recRecordset = RDOConnection.OpenResultset("select * from Customers", rdOpenKeyset, _ rdConcurBatch) recRecordset.MoveFirst End Sub
Public recRecordset As DataSet Private _RDOConnection As SqlConnection = Nothing Private Sub Form1_Load(ByVal eventSender As Object, ByVal eventArgs As EventArgs) Handles MyBase.Load RDOConnection = New SqlConnection() RDOConnection.CursorDriver = RDO.CursorDriverConstants.rdUseClientBatch RDOConnection.Connect = "uid=ftt_uwee;pwd=fttuwee;driver={SQL SERVER}; server=AISCRIT11\FTT;database=Northwind;" RDOConnection.EstablishConnection(RDO.PromptConstants.rdDriverNoPrompt, False) Dim tempAdapter As SqlDataAdapter = New SqlDataAdapter("select * from Customers", RDOConnection) recRecordset = New DataSet tempAdapter.Fill(recRecordset) 'UPGRADE_ISSUE: (1040) MoveFirst function is not supported. More Information: http://www.vbtonet.com/ewis/ewi1040.aspx UpgradeStubs.RDO_rdoResultset.MoveFirst(recRecordset) End Sub
public DataSet recRecordset = null; private SqlConnection _RDOConnection = null; private void Form1_Load( Object eventSender, EventArgs eventArgs) { RDOConnection = new SqlConnection(); RDOConnection.CursorDriver = RDO.CursorDriverConstants.rdUseClientBatch; RDOConnection.Connect = "uid=ftt_uwee;pwd=fttuwee;driver={SQL SERVER}; server=AISCRIT11\\FTT;database=Northwind;"; RDOConnection.EstablishConnection(RDO.PromptConstants.rdDriverNoPrompt, false, null); SqlDataAdapter tempAdapter = new SqlDataAdapter("select * from Customers", RDOConnection); recRecordset = new DataSet(); tempAdapter.Fill(recRecordset); //UPGRADE_ISSUE: (1040) MoveFirst function is not supported. More Information: http://www.vbtonet.com/ewis/ewi1040.aspx UpgradeStubs.RDO_rdoResultset.MoveFirst(recRecordset); }
In comparison, this data access migration technique offers a limited conversion ratio and requires considerably more human efforts to achieve functional equivalence than the System.Data.Common approach. The main reason behind this situation is the lack of helper classes.
8834 N Capital of Texas Hwy, Ste 302
Austin, TX 78759
Call us: +1 (425) 609-8458
info@wearegap.com