1

このように更新されるすべてのデータを保存できる必要があります。

ユーザーが車のモデル (メーカー、タイプ、年式) を挿入します。戻ってきて、年を更新します。両方を保存して、実行したすべての作業の履歴を保持できるようにする必要があります。それを行う最善の方法は何ですか?

4

2 に答える 2

2

これを行うにはいくつかの方法があります。1 つの方法は、いくつかの SQL トリガーを作成し、データベース内で完全に実行することです。いくつかの手がかりについては、こちらをご覧ください。

もう 1 つの方法は、Entity Framework コード内で監査を行うことです。Codeplexにソースを持つAuditDbContextという nuget パッケージがあります

EF監査を で行うか、 で行うかを決定する必要がありますSQL。明らかに、すべてを監査する必要があり、同じ EF データレイヤーを使用しないさまざまなアプリケーション (さまざまなテクノロジなど) からデータベースにアクセスすることがある場合は、SQL トリガーが適している可能性があります。

于 2013-06-09T17:20:24.427 に答える
0

たぶん (「履歴」の問題に頻繁に直面している場合)、CQRS パターンに興味があるかもしれません。良い入門書Microsoft on CQRS。このパターン用に .NET で構築されたフレームワークがあります (まだ試していません): NCQRS

質問の要件を今すぐ満たしたいだけで、SQL Server 2010 以降を使用している場合は、Change Trackingが別のオプションになる可能性があります。私はそれをトリガーにすることを好みます(しかし、最終的には、そのような暗い処理のロギングソリューションはすべて、追加のリスクをもたらします).

于 2013-06-10T14:07:26.340 に答える