Vergleichen Sie zwei von DataRows

Ich habe eine datatable mit mehreren Zeilen drin. Ich habe 1 Zeile mehr, und ich möchte, um zu überprüfen, ob diese Zeile ist ein Duplikat der vorhandenen Zeilen in der datatable. Also habe ich versucht wie:

DataTable dataTable = GetTable();
if (dataTable.Rows.Count > 1)
{
    for (int i = 0; i < dataTable.Rows.Count; i++)
    {
        var dataRow = dataTable.Rows[i];

        if (dt.Rows.Contains(dataRow) && dt.Rows.Count != 0)  //Giving error
            continue;
        dt.ImportRow(dataRow);
        return dataRow;
    }
}

Hier, meine dataTable kann auch null sein/leer für die erste Zeit.

Aber seine Angabe Fehler:

Tabelle nicht über einen Primärschlüssel verfügen.

Kann mir jemand helfen bitte. Wenn weiterer code benötigt wird, nur Kommentar.

  • Ist die Tabelle, die Sie verwenden, aus der Datenbank gelesen hat, a primary key (in der Datenbank selbst)? Es scheint, dass es nicht...
  • ja, es habe einen primary key in der Datenbank für sicher
  • Was bekommen Sie für die Eigenschaft dataTable.PrimaryKey?
  • siehe mein edit-post.....lassen Sie mich überprüfen
  • wenn dataTable leer ist, dataTable.PrimaryKey gibt den gleichen Fehler.
  • siehe edit post...
  • Welche Größe haben die Tabelle? Wie viele Zeilen?

InformationsquelleAutor Sandy | 2012-01-24
Schreibe einen Kommentar