C#で2つのデータテーブルを比較する方法が不思議です。私は2つのデータテーブルを持っています。データテーブル1にはFirstNameとLastName、データテーブル2にはField1、Field2、First_Name、Last_Nameが含まれています。不一致レコードの2つのデータテーブルの比較C#
データテーブル1に存在し、データテーブル2に存在しないレコードを探したいと思いますか?どんな助けもありがとう。ありがとうございました!
C#で2つのデータテーブルを比較する方法が不思議です。私は2つのデータテーブルを持っています。データテーブル1にはFirstNameとLastName、データテーブル2にはField1、Field2、First_Name、Last_Nameが含まれています。不一致レコードの2つのデータテーブルの比較C#
データテーブル1に存在し、データテーブル2に存在しないレコードを探したいと思いますか?どんな助けもありがとう。ありがとうございました!
LINQの使用は最も自然ですが、DataTableから変換してExcept
を使用する必要があります。あなたは、元のDataRow
のが必要な場合は
var In_dt1_only = dt1.AsEnumerable().Select(r => new { first = r.Field<string>("First"), last = r.Field<string>("Last")}).Except(dt2.AsEnumerable().Select(r => new { first = r.Field<string>("First"), last = r.Field<string>("Last")}));
、あなたの代わりにWhere
を使用することができます。
var datarows_in_dt1_only = dt1.AsEnumerable().Where(dr1 => !dt2.AsEnumerable().Any(dr2 => dr1.Field<string>("First") == dr2.Field<string>("First") && dr1.Field<string>("Last") == dr2.Field<string>("Last")));
私は明日の朝にお試しください、ありがとう! – bbcompent1
これはうまくいきました。私がしなければならなかったのは、2つのデータテーブルを入れ替えるだけでした。ご協力いただき誠にありがとうございます! – bbcompent1
あなたは何を試してみましたか?あなたのコードを投稿してください – maccettura
これは私が前にやったことがないので、私は尋ねています。私はGoogleでいくつかの記事を読んだことがありますが、あまり意味がないか、著者がちょっと混乱しています。私は私の方法で私を始めるためにパンくずリストを求めているだけです。ありがとう! – bbcompent1
Linqを使用することができます: https://stackoverflow.com/questions/9289475/difference-of-two-datatables-in-c-sharp – naturalbornlazy