Wie man ein DataSet update/insert am einfachsten bewerkstelligt...

Ich hatte mich mit der Thematik befasst, wie man Records mittels eines DataSets am einfachsten erstellt/aktualisiert unter .net

Im guten alten classic ASP unterschied man zwischen Insert und Update am einfachsten in dem man auf eine vorhandene ID prüfte und ggf. mittels .addnew eine neue Recordrow anlegte. Mit dem Updatestatement wurde dannach der Rest erledigt:

if ID==0
   RS.addnew
end if
RS.Datum = Datum
...
RS.update

In .net gestaltet sich die Sache ein Mü komlizierter, insbesondere wenn man mit typted DataSets arbeitet. Am einfachsten geht es jedoch so:

//Row aus typed DataSet
ds.myRow dr;

//Abfragen ob ID leer (sprich insert)
if(myID == 0)
{
   //typed Datarow erstellen
   dr = ds.table.NewFaqRow();
}
else
{
   //dr auf vorhandene Row referenzieren
   dr = ds.table.FindBymyID(myID);
}

//Werte befüllen
dr.Datum = Convert.ToDateTime(tbDatum.Text);
...
...

//bei insert neue Datarow hinzufügen!
if (myID == 0)
   ds.table.AddmyRow(dr);
//Update über DataAdapter
da.Update(ds.table);

Print | posted @ Tuesday, September 21, 2004 12:56 PM