DOBON.NETプログラミング道掲示板

ツリー一括表示

Nomalアイコン DataTableの構造が同じか調べるメソッド /ナンバー (19/02/22(Fri) 17:43) #34156
Nomalアイコン Re[1]: DataTableの構造が同じか調べるメソッド /魔界の仮面弁士 (19/02/22(Fri) 18:55) #34157
  └Nomalアイコン Re[2]: DataTableの構造が同じか調べるメソッド /ナンバー (19/02/25(Mon) 16:28) #34160 解決み!


親記事 / ▼[ 34157 ]
■34156 / 親階層)  DataTableの構造が同じか調べるメソッド
□投稿者/ ナンバー 一般人(1回)-(2019/02/22(Fri) 17:43:48)
  • アイコン環境/言語:[C#5] 
    分類:[.NET] 

    DataTableが2つあります。このDataTable同士の構造が同じかどうかを簡単に
    判断するメソッドはあるでしょうか?

    DataTableの中身は置いておいて、構造のみ同じかどうかを簡単にしる
    手立てがあればお教え頂けないでしょうか。
違反を報告
[ □ Tree ] 返信 削除キー/

▲[ 34156 ] / ▼[ 34160 ]
■34157 / 1階層)  Re[1]: DataTableの構造が同じか調べるメソッド
□投稿者/ 魔界の仮面弁士 大御所(1201回)-(2019/02/22(Fri) 18:55:47)
  • アイコンNo34156に返信(ナンバーさんの記事)
    > DataTableが2つあります。このDataTable同士の構造が同じかどうかを簡単に
    > 判断するメソッドはあるでしょうか?

    こんなのはどうでしょう。

    var ms1 = new MemoryStream();
    var ms2 = new MemoryStream();
    dataTable1.WriteXmlSchema(ms1);
    dataTable2.WriteXmlSchema(ms2);

    bool isSameSchema = ms1.ToArray().SequenceEqual(ms2.ToArray());



    > DataTableの中身は置いておいて、構造のみ同じかどうかを簡単にしる

    比較すべき「構造」情報に、TableName プロパティの差を
    含めれるかどうかも検討する必要がありそうです。

    たとえば、下記の 2 つを同じものとみなすか否か。

    var dt1 = new DataTable("Employees") { Columns = { new DataColumn("Id"), new DataColumn("Name"), new DataColumn("EMail") } };
    var dt2 = new DataTable("Customers") { Columns = { new DataColumn("Id"), new DataColumn("Name"), new DataColumn("EMail") } };
違反を報告
[ 親 34156 / □ Tree ] 返信 削除キー/

▲[ 34157 ] / 返信無し
■34160 / 2階層)  Re[2]: DataTableの構造が同じか調べるメソッド
□投稿者/ ナンバー 一般人(3回)-(2019/02/25(Mon) 16:28:19)
  • アイコン比較できました。ありがとうございます。
解決み!
違反を報告
[ 親 34156 / □ Tree ] 返信 削除キー/


Mode/  Pass/


- Child Tree -