MVC および C# コードに固有の、次の DDD の概念に関する書籍またはブログ エントリを探しています。簡単な要約: 特別なリポジトリ メソッドからドメイン モデルを部分的に入力し、変更されたドメイン モデル プロパティのみをクライアントから JSON として送信します。
詳細:
Customer オブジェクトはあるが、顧客番号と顧客名のみを含むドロップダウン リストが必要な場合は、特別な Repository メソッドを作成して Customer の完全な IList を返しますが、顧客 ID と顧客名のみを入力し、他のプロパティを null のままにするか、空の。これにより、ビュー モデル用に大量の特別なクラスを作成する必要がなくなります。
Customer を編集している場合は、Customer オブジェクトをサーバーのセッション変数にキャッシュしてから、Customer DDL とクライアントの最初の顧客オブジェクトを含む View Model を JSON でシリアル化します。サーバ。JSON を MVC コントローラー メソッドの「オブジェクト パラメーター」(JSON からのオブジェクト パラメーターへのポスト データの再構築) に解決すると、非常に便利です。
クライアント (JavaScript) は顧客オブジェクトをインスタンス化し、オブジェクトのプロパティを対応する同じ名前の HTML 入力ステートメントにバインドします。一方が変われば、もう一方が変わる。また、IList オブジェクトのテンプレートの概念も取り入れます。また、入力値が変更された場合 (イベント) に、顧客オブジェクト プロパティにダーティのフラグを立てます。
送信時に、変更された (ダーティな) オブジェクト プロパティのみが JSON にシリアル化され、サーバーに送り返されます。変更されていないプロパティは単に除外されます。サーバーは、キャッシュされた顧客オブジェクトを部分的な JSON 顧客オブジェクト (変更のみ) と結合し、結果の顧客オブジェクトをリポジトリに送信して永続化します。
それは本当に素晴らしいコンセプトです。理論について読んで、やることリストを手に入れたいと思います。