新しい中間層にはLINQtoSQLとWCFを使用しており、実際のLINQクラスを使用するのではなく、データ転送オブジェクトを使用してネットワークを通過させています。更新が正しく機能し、同時実行が正しく処理されるようにするために、ここで概説するメソッドのいずれか(タイムスタンプまたは行バージョンに基づくLinq Table Attach())を使用します。
読み取り時間を節約するために、基本的には、テーブルでタイムスタンプ/行バージョン列を使用するか、デフォルトと更新トリガーを備えた日時列を使用できます。どちらの方法でも、毎回新しく生成された値を取得する列を取得できます。挿入または更新が発生し、その列はLINQが同時実行性をチェックするために使用する列です。
私の質問は-どちらが良いですか?多くのテーブルに「UpdatedWhen」の日時列がすでにありますが(すべてではありません-質問しないでください)、デフォルトとトリガーを追加するか、rowversionを追加するだけです(使用する必要があります)今のところ、タイムスタンプの構文は、各テーブルに対してSQL2005をしばらくサポートしているため、どちらの方法でも、DBを機能させるために変更しているので、パフォーマンスに違いがあるかどうかを知りたいです。これら2つの選択肢の間に注意すべき他の重要な違い。私はウェブとここSOで検索しようとしましたが、今のところ運がありません。ありがとう。