0

(私の悪い英語でごめんなさい)

ねえ、監査目的で、データベースで発生したすべての変更をログに記録する必要があります。エンティティを挿入または削除するときは簡単ですが、何かを更新するときは、変更されたプロパティと変更された値を保存する必要があります。私のドメイン サービスは DbDomainService です。どうすれば変更を取得できますか? 古い値を確認して自分で比較するには、データベースにアクセスする必要がありますか?

4

1 に答える 1

0

これを行うためのより洗練された方法 (たとえば、アスペクト コーディング技術の使用) がありますが、これを行った孤立したケースが 1 つあります。これは、更新の発生を許可するエンティティごとに、サーバー側での WCF RIA サービスの標準的な更新です。

public void UpdatePackingSlip(PackingSlip currentPackingSlip)
{

  var BeforeUpdate_PackingSlip = this.ChangeSet.GetOriginal(currentPackingSlip);
  //at this point you can compare the original values from the updated values, and capture
  // whatever you want todo

オブジェクトをオブジェクト コンテキストに戻すコードを変更しないようにしてください。

于 2012-02-27T19:30:56.103 に答える