ASP.NET MVC でのオブジェクトのリストの保存について質問があります。まず、EntityFramework や ORM ツールのような Nh は使用していません。Ado.net を使用してください。
オブジェクト Product があり、javascript を介してすべての製品データを収集し、1 回の呼び出しで製品リストをバッチ更新するとします。
私の質問は、挿入、更新、または削除されたアイテムをいつ区別する必要があるかということです。
1 つの戦略は、DTO オブジェクトと javascript ViewModel に enum プロパティを設定し、viewModel にアイテムを追加するときに、このオブジェクトに追加するマークを付け、1 つのアイテムを変更した場合は、それを更新済みにマークすることです。そのため、このリクエストがアクションに来ると、挿入または更新するアイテムを知ることができます。
- 長所: サーバー側では簡単です。オブジェクトのステータスをサーバー側と区別する必要はありません。
- 短所:サードパーティによって呼び出されるwebapiにこのアクションを公開したい場合、オブジェクトの状態を区別するためにサードパーティのユーザーが必要になる場合があります。
サーバー側からデータを区別します。オブジェクトのリストを提供してください。サーバー側では、まずデータベースから現在のデータを取得し、データを比較してから、挿入または更新するレコードを確認します。
- 長所: すべての比較はサーバー側から行われます。
- 短所:パフォーマンスの問題
クライアントから渡されたデータが何であれ、現在のデータを削除して新しいデータを挿入するだけです
誰かが私にアドバイスをくれることを願っています.