Buonasera a tutti i presenti,
ho iniziato a studiare e a comparare VB6 con .Net, ho un quesito a cui nei
vari testi non ho trovato, o saputo trovare, risposta:
Questo è una parte di codice di una mia applicazione in VB6 che usa il
sistema command:
Dim cn As ADODB.Connection
Dim cmd As New ADODB.Command
With cmd
.ActiveConnection = cn 'cn connessione esistente già aperta con DB Access
.CommandType = adCmdText
.CommandText = "delete from ditte_esterne where ideste=" & id_ditta
.Execute
.ActiveConnection = Nothing
EndWith
ed è equivalente, almeno credo, a questo scritto in VB .Net:
Imports System.Data.Oledb
Dim objconn As OleDbConnection
Dim objcomm As OleDbCommand
Dim stringasql As String
Dim stringaconn As String
objconn=New OleDbConnection(stringaconn) 'sopprassediamo con i dati della
stringa di connessione
stringasql="delete from ditte_esterne where ideste=" & @id_ditta
with objconn
.Open()
objcomm=New OleDbCommand(stringasql,objconn)
objcomm.ExecuteNonQuery()
.Close()
end with
Vorrei, cortesemente, che qualcuno mi indicasse, parimenti, il codice VB .Net
equivalente a questo VB6, che non usa il sistema "command - insert into" ma
quello del recordset (addnew):
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim stringaconn As String
Dim sqlagg As String
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
sqlagg = "select * from varie where idreg=" & idrapp _
& " and idriga=" & idriga_varie
cn.Open stringaconn 'la stringa di connessione al DB di Access
Wit rs
.CursorLocation = adUseClient
.LockType = adLockBatchOptimistic
.Open sqlagg, cn, , , adCmdText
.ActiveConnection = Nothing
If .EOF Then
.AddNew
!idreg = CLng(idrapp)
End If
!costo = CDbl(txtcosto_varie.text)
!descli = txtdescli.text
!desditta = txtdesditta.text
.ActiveConnection = cn
.UpdateBatch
.Close
EndWith
Set cn = Nothing
Set rs = Nothing
Non sono riuscito a trovare un codice equivalente in VB .Net che non sia
quello che usa la "ExecuteNonQuery()".
cerco qualcosa di equivalente al comando "addnew" e al prefisso "!".
Grazie e ciao.