- INDEX VB TO NET
- VBUC FEATURES
- LEGACY DATA ACCESS MODERNIZATION
- DAO TO DATA.COMMON
DAO to Data.Common with helpers
Related Content
- ADO to ADO.NET Common
- ADO to .NET Native SqlClient
- How does the VBUC convert ADO
- RDO to ADO.Net System.Data.Common
- RDO Special Conversions
The VBUC upgrades the DAO data access technology to ADO.NET ONLY by means of the System.Data.Common namespace. If the original VB6 code contains DAO code the VBUC will upgrade the data access code following the next transformation table:
Class | Maps to |
DAO.Recordset | Artinsoft.VB6.DB.DAO.DAORecordSetHelper |
DAO.Field | System.Data.DataColumn |
DAO.Fields | System.Data.DataColumnCollection |
DAO.Database | System.Data.Common.DBConnection |
DAO.ParameterDirectionEnum | System.Data.ParameterDirection |
DAO.Parameters | System.Data.Common.DbParameterCollection |
DAO.Parameter |
System.Data.Common.DbParameter Example: System.Data.Common.DbParameter p = factory. CreateParameter(); |
DAO.QueryDef | System.Data.Common.DbCommand |
DAO.Connection | System.Data.Common.DbConnection |
DAO.Workspace | Artinsoft.VB6.DB.DAO.WorkspaceHelper |
DAO.DBEngine | Artinsoft.VB6.DB.DAO.DBEngineHelper |
DAO.RecordsetTypeEnum | Artinsoft.VB6.DB.DAO.DAORecordsetTypeEnum |
DAO.LockTypeEnum | Artinsoft.VB6.DB.DAO.DAOLockTypeEnum |
DAO.RecordsetOptionEnum | Artinsoft.VB6.DB.DAO.DAORecordsetOptionEnum |
A brief source sample of this feature:
Original VB6 Code:
Public recRecordset As DAO.Recordset Public dB As DAO.Database Private Sub Form_Load() Set dB = DBEngine.OpenDatabase(App.Path & "\TestDB.mdb") Set recRecordset = dB.OpenRecordset("Select * from Countries", DAO.dbOpenDynaset, DAO.dbConsistent, DAO.LockTypeEnum.dbOptimistic) recRecordset.Sort = "Name" recRecordset.MoveFirst End Sub
Resulting VB.NET Code:
Public recRecordset As DAORecordSetHelper Public dB As DbConnection Private Sub Form1_Load(ByVal eventSender As Object, ByVal eventArgs As EventArgs) Handles MyBase.Load 'UPGRADE_WARNING: (2065) DAO.DBEngine method DBEngine.OpenDatabase has a new behavior. More Information: http://www.vbtonet.com/ewis/ewi2065.aspx dB = DBEngineHelper.Instance(Artinsoft.VB6.DB.AdoFactoryManager.GetFactory()).OpenDatabase(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\TestDB.mdb) recRecordset = DAORecordSetHelper.Open("Select * from Countries", dB, "") 'UPGRADE_ISSUE: (2064) DAO.Recordset property recRecordset.Sort was not upgraded. More Information: http://www.vbtonet.com/ewis/ewi2064.aspx UpgradeStubs.DAO_Recordset.setSort(recRecordset, "Name") recRecordset.MoveFirst() End Sub
Note that the connection String (gray highlight) was manually added after the automated migration stage.
Resulting C#.NET Code:
public DAORecordSetHelper recRecordset = null; public DbConnection dB = null; private void Form1_Load( Object eventSender, EventArgs eventArgs) { //UPGRADE_WARNING: (2065) DAO.DBEngine method DBEngine.OpenDatabase has a new behavior. More Information: http://www.vbtonet.com/ewis/ewi2065.aspx dB = DBEngineHelper.Instance(Artinsoft.VB6.DB.AdoFactoryManager.GetFactory()).OpenDatabase(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\TestDB.mdb"); recRecordset = DAORecordSetHelper.Open("Select * from Countries", dB, ""); //UPGRADE_ISSUE: (2064) DAO.Recordset property recRecordset.Sort was not upgraded. More Information: http://www.vbtonet.com/ewis/ewi2064.aspx UpgradeStubs.DAO_Recordset.setSort(recRecordset, "Name"); recRecordset.MoveFirst(); }