Hej! Hej Tyronne. Boyz, Sorry, Johan!ANvända ADODB i C#
Jag arbetar mot et Com-object som retunerar vissa SQL frågor som ett reccordset. Jag skulle då vilka fånga upp detta och sedan omvandla reccordsetet till ett Dataset. Kan någon hjälpa mig på traven
Här är kodens som genererar RS:
OBS! Konden är ur VB 6
<code>
Dim Rs as ADODB.Reccordset
Set Rs=oGBA.ExecuteQuery(”select contid, name from g_contac”,””,”ADORS”,1)
</code>
/TyronneSv: ANvända ADODB i C#
Jag skall försöka att hjälpa dig, har nyss börjat med detta, men här tror jag nog...
Om vi utgår ifrån att databasen är Access.
Lägg till
<code>
using System.Data.OleDb;;'detta skall ju vara överst
'i classen
private OleDbConnection con;
private OleDbDataAdapter da;
private DataSet ds;
'connetionstring till databasen
string CONstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Försäljning.mdb";
con = new OleDbConnection(CONstring);
'fråga databasen
string s = "SELECT Företagsnamn,Kontaktperson FROM Kunder";
'adaptern utför kommandot
da = new OleDbDataAdapter(s,con);
'skapa ett dataset
ds = new DataSet("Kunder");
'kör ett try/catch block så ingenting illa händer
try
{
'öppna connection
con.Open();
'och fyller ett dataset med posterna
da.Fill(ds,"Kunder");
'stänger efter oss
con.Close();
}
catch(Exception fel)
{
MessageBox.Show(fel.Message.ToString());
}
'lägger in den första posten med kunder i en textbox
testbox.text=ds.Tables["Kunder"].Rows[0][kunder].ToString();
</code>
Detta var bara ett litet exempel, jag rekommendera att du köper några böcker i ämnet, det är stort...Sv: ANvända ADODB i C#
Det är enklare än så. OledbDataAdapter ger dig möjlighet att läsa in ADO RS till ett DataSet.
OleDbDataAdapter adapter = new OleDbDataAdapter();
adapter.Fill(myDS, adoRs, "MyTable");
Detta förutsätter att VB6-komponenten "gjort sitt jobb", dvs stängt db-connection etc. Och att du lyckats wrappa din com-dll till .NET
Sv: ANvända ADODB i C#
Den kollade jag inte. Mitt svar var väl snarare riktad mot det något "större" kodexemplet ovan :-)