2009-05-06 5 views
1

データセットに2つのデータセットがあり、データテーブルに含まれるデータに違いがあるかどうかを知る必要があります。私はループや個々のレコードや列の比較を避けようとしていますが、それ以外の方法はありません。私が知る必要があるのは、データに違いがある場合は、違いの詳細を知る必要はないということです。2つのデータセットを比較するには

私は以下のコードを試しましたが、dataset.HasChanges()が常にfalseを返すようにdataset.Mergeがrowstatusを更新しないようです。任意のヘルプは高く評価されています:

var currentDataSet = GetSomeData(); 
var historicalDataSet = GetSomeHistoricalData(); 

historicalDataSet.Merge(currentDataSet); 

if (historicalDataSet.HasChanges()) DoSomeStuff(); 

答えて

3

私はこれに関する組み込みのサポートについて知らず、私はそれも期待していません。だからあなたは何らかの形でこれを自分で行う必要があります。

もっとも明白なやり方は、テーブル単位で、行単位でアプローチすることです。

特定の要因、つまり正確に同じ命名、レコードの順序付けなどに頼ることができるのであれば、両方をXMLとして保存して結果を比較することが効率的なトリックであるかどうかをテストできます。

+0

はい、それはチケットです。この場合、レコードのスキーマと順序が保証されているので、これは完全に機能します。それを自分で考えたのだろうか!ありがとう。 – JasonS

+0

6年経ちました。事が変わったと確信しています。データロー(および/またはデータ)を比較できるようになりましたか?それはかなり共通の問題だと思われます - 私は同じことをしたいです。レンダリングすることができれば、将来のユーザーには大きな頭痛を与えません。 – BKSpurgeon

関連する問題