2016-04-06 14 views
-1

1分の時間間隔の間にデータテーブルの値の相違を表示します。.Net 2つのデータテーブルを比較

以下のコードは私にとっては機能しませんでした。私は多くを検索したが失敗した。

private void button2_Click(object sender, EventArgs e) 
    { 
     DataTable changedRecords = this.dataWE.DataTable1.GetChanges(); 
     label1.Text = changedRecords.Rows.Count.ToString(); 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     this.dataTable1TableAdapter.Fill(this.dataWE.DataTable1); 
    } 
+0

詳細については、何が問題になっていないか説明してください。間違いはありますか?それは間違った結果を生み出しますか? – devuxer

+1

[この質問]を見てください(http://stackoverflow.com/questions/15002623/how-to-get-difference-between-two-datatables) – Icemanind

+0

どのような種類のdataWE変数ですか?ところで、あなたの質問で1分のタイマー間隔でテーブルのデルタ変更を取得するように求めているが、コードスニペットのボタンをクリックして同じことをしようとしている。あなたの正確な意思は何ですか? – RBT

答えて

0

"GetChanges()"メソッドを使用したことはありません。別の行のカウントを取得するだけの場合は、新しいデータテーブルの行数(古いデータテーブルの行数)を使用しないでください。実際のデータを比較しようとするなら、@ Icemanindの答えはおそらくあなたの最善の策です。

private static void CompareTables(DataTable PrimaryTable = null, DataTable SecondaryTable = null) 
    { 
     DataTable TempTable1 = PrimaryTable ?? new DataTable(); 
     DataTable TempTable2 = SecondaryTable ?? new DataTable(); 

     // Add some data or whatnot here or require 

     double RowDifference = TempTable2.Rows.Count - TempTable1.Rows.Count; 
     if (RowDifference > 0) 
     { 
      lblDifference.Text = RowDifference; 
     } 
     else lblDifference.Text = "No changes were made!"; 
    } 
+0

私のポイントは行の差を計算していません。私は列の値の違いを計算したい。行数が一例です。 –

+0

ご迷惑をおかけして申し訳ございませんが、あなたが質問した例と方法は、あなたが探していた限り、軽く開いていました。上で述べたように、Stack Overflowに関する先の例に関する@ Icemanindのコメントを見てください。それは他人の反応を反復することなく、あなたにとって最も役に立つかもしれません。 –

+0

こんにちは、http://i.hizliresim.com/ljp5or.pngこれは私が欲しいものです。 –

関連する問題