Keine doppelten Datensätze in Tabelle schreiben (Unique)



  • DataSet dataset1 = new DataSet();
    dataset1.Tables.Add("Tabelle1");
    dataset1.Tables["Tabelle1"].Columns.Add("Spalte1");
    dataset1.Tables["Tabelle1"].Columns["Spalte1"].Unique = true;
    string string1 = "eins";
    dataset1.Tables["Tabelle1"].Rows.Add(new object[]{string1});
    string string2 = "eins";
    dataset1.Tables["Tabelle1"].Rows.Add(new object[]{string2});
    

    Gibt es eine elegante Lösung wie ich die letzte (und drittletzte) Zeile korrigieren sollte um schon vorhandene Datensätze nicht nochmal anzufügen - also den string2 nicht anzufügen da "eins" schon vorhanden ist?



  • Vorher testen obs schon da ist.

    Bye, TGGC (Pipe my World.)



  • Ich kenne mich mit den DataSet-Befehlen noch nicht aus, wie teste ich es am einfachsten?



  • Ist das so eine vernünftige Lösung?:

    DataSet dataset1 = new DataSet();
    dataset1.Tables.Add("Tabelle1");
    dataset1.Tables["Tabelle1"].Columns.Add("Spalte1");
    //dataset1.Tables["Tabelle1"].Columns["Spalte1"].Unique = true;
    dataset1.Tables["Tabelle1"].PrimaryKey = new DataColumn[] {dataset1.Tables["Tabelle1"].Columns["Spalte1"]};
    string string1 = "eins";
    if (!dataset1.Tables["Tabelle1"].Rows.Contains(string1))
    	dataset1.Tables["Tabelle1"].Rows.Add(new object[]{string1});
    string string2 = "eins";
    if (!dataset1.Tables["Tabelle1"].Rows.Contains(string2))
    	dataset1.Tables["Tabelle1"].Rows.Add(new object[]{string2});
    

Anmelden zum Antworten