ある DataTable の DataRow が別の DataTable に存在するかどうかを確認したいと考えています。
2 つの DataTables があります。同じで、両方に存在する DataRows がいくつかあります。毎回どの列があるかを知っていれば、これはとても簡単ですが、わかりません。の線に沿って何かを使用して...
datatable.Rows[i].Field <String> columnName);
このフィールドは整数、文字列、または日付/時刻になる可能性があるため、機能しません。ただし、2つのファイルが同じ列名を共有していることは知っています。
私のコードはバラバラですが、今のところはこんな感じです。今は列名のリストを生成していますが、それだけです。
for (var h = 0; h < origDbfFile.datatable.Columns.Count; h++) {
columnNames.Add(origDbfFile.datatable.Columns[h].ColumnName);
}
ループの悪夢が進行中です。誰かがよりクリーンな解決策を見つけることができれば、それは大歓迎です!
for (int g = 0; g < origDbfFile.dataset.Tables[0].Rows.Count; g++)
{
for (int h = 0; i < modDbfFile.dataset.Tables[0].Columns.Count; h++)
{
foreach (String columnName in columnNames)
{
String rowValue = origDbfFile.dataset.Tables[0].Rows[g].Field<String>(Convert.ToString(columnName));
//test data
result += "Column name:  : " + columnName + "<br/>";
result += "Value " + rowValue + "<br/><br/>";
//if logic will go below
}
}
}