0

データベース内のさまざまな INSERT/DELETE トリガーによって更新されているテーブルの 1 つに列があります。トリガーは、リンクされたテーブルの内容に基づいて計算を実行し、結果をベース テーブルの列に格納してクエリを容易にします。

これらのテーブルを更新しようとすると、Linq-to-SQL が ChangeConflictException をスローします。おそらく、トリガーがこの列を変更しているため、L2S はデータの競合があると考えています。

私が探している正確な動作は次のとおりです。

  • L2S は、オブジェクトを取得するときにこの列の値を取得する必要があります
  • L2S はこの列値への変更を無視する必要があります - コードで行われた変更は DB に永続化されるべきではありません
  • 保存時の競合は無視する必要があります。
  • (可能であれば)挿入/更新操作に続いてDBから最新の値を取得する必要がありますが、難しい場合はこれがなくても生きられます。

Linq-to-SQL でこの動作を実装するのを手伝ってくれる人はいますか?

ありがとう、

ディラン

4

1 に答える 1

3

LINQ to SQL Designerで、(主キーの場合と同じように)自動生成されるように列を構成する必要があります。これにより、これらの競合を防ぐことができます。

于 2010-09-23T11:24:32.143 に答える