keptins
asked on
Migrating from VB6 to VB.Net
I'm trying to Migrate some code from a library (written by someone else) to VB.Net and I can't find a solution to this Call.
NO- I don't know ADO.Net (Yet)
Does anyone know How to rewrite the line with (or what is causing this)
.Execute(SQl, , ADODB.CommandTypeEnum.adCm dText + ADODB.CommandTypeEnum.adEx ecuteNoRec ords)
NO- I don't know ADO.Net (Yet)
Does anyone know How to rewrite the line with (or what is causing this)
.Execute(SQl, , ADODB.CommandTypeEnum.adCm
Public Function ExecuteID(ByVal SQl As String) As Long
'PURPOSE: RETURN VALUE OF IDENTITY COLUMN OF A NEWLY INSERTED RECORD
'SQL is a valid Insert statement.
'ConnetionString property has been set to a valid Connection String
On Error GoTo LocalError
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim AutoID As Long
With rs
'Prepare the RecordSet
.CursorLocation = ADODB.CursorLocationEnum.adUseServer
.CursorType =ADODB.CursorTypeEnum.adOpenForwardOnly
.LockType = ADODB.LockTypeEnum.adLockReadOnly
.Source = "SELECT @@IDENTITY"
End With
With cn
.ConnectionString = ConnectionString
.CursorLocation = ADODB.CursorLocationEnum.adUseServer
.Open()
.BeginTrans()
.Execute(SQl, , ADODB.CommandTypeEnum.adCmdText + ADODB.CommandTypeEnum.adExecuteNoRecords)
With rs
.ActiveConnection = cn
.Open(, , , , ADODB.CommandTypeEnum.adCmdText)
AutoID = rs(0).Value
.Close()
End With
.CommitTrans()
.Close()
End With
rs = Nothing
cn = Nothing
'If we get here ALL was Okay
ExecuteID = AutoID
Exit Function
LocalError:
m_sLastError = Err.Number & " - " & Err.Description
ExecuteID = 0
End Function
ASKER
thanks for your input...
I'm looking for a quick and dirty solution
I'm looking for a quick and dirty solution
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
thanks for the solution to this...I just wish there were some easy to read resources
Yeah, that's the problem with any migration task.... you rarely have the time to read/absorb the material as you're using it. Only after you're finished with the project, are you in a position to just scrap the old and start over from scratch (something that you couldn't do at the time).
I've got a few articles on ADO.Net that's desgined from an "classic ADO" perspective. So, when you've got time (ha!), take a look at the following:
http://home.hot.rr.com/graye/Articles/BeginningADO.htm
http://home.hot.rr.com/graye/Articles/SavingDataADO.htm
I've got a few articles on ADO.Net that's desgined from an "classic ADO" perspective. So, when you've got time (ha!), take a look at the following:
http://home.hot.rr.com/graye/Articles/BeginningADO.htm
http://home.hot.rr.com/graye/Articles/SavingDataADO.htm
ASKER
thanks
I see there are several books
Do you recommend any?
I see there are several books
Do you recommend any?
Here's an article I wrote on Visual Form Inheritance. It used SQL Data Readers entirely. I think it also used SQL Server and stored procedures. I wrote a clsParamBuilder class to make building the parameters for the command object simpler. Much of it uses Interfaces i.e. instead of specifically for SQL Server or OLEDb it will use things like IDBCommand, from which SQLCommand and OLEDBCommand inherit....so it is made generic to work with whichever you choose.
You could be able to download the source code and find more than sufficient examples to rewrite the existing code using ADO.NET with a DataReader, which from the looks of your code is all you'd need for readonly data.