私はNHibernate(そして率直に言ってDDDの概念)に慣れていないので、私の質問は単純または無関係かもしれませんが、誰かが私の混乱を助けてくれれば非常にありがたいです。
私のアプリケーションでは、DDDとNHibernateをORMとして使用しています。
単純なエンティティでは問題なく動作しますが、現在、エンティティが非常に複雑になっている段階にあります(したがって、エンティティAにはエンティティBとエンティティCの配列が含まれ、各エンティティCにはDと他のいくつかのパラメータが含まれます... )。
私のクライアントアプリはインターネット経由でWCFサービス(dbと通信)と通信しているため、速度(およびペイロードサイズが非常に重要)です。場合によっては、これらの複雑なDTOの配列をサービスからクライアントに送信する必要があります。その後、クライアントはAのいくつかの値を更新し、保存/更新のためにサーバーに送り返します。
ペイロードを減らすために、サービスからクライアントにデータを送信するときに、マッパーで未使用のプロパティ値を無効にして(オートマッパーなどを使用していない)、DTOのBエンティティとCエンティティから未使用のプロパティ値を削除しようとしています。
エンティティをdbに保存する場合、どうすればよいですか?(マッパーで手動で無効にした)BとCのいくつかの変数にnull値を持つエンティティAを返すと、NHibernateはAを保存するときにBとCも保存しようとします。Aだけを保存したいのですが、 NHibernateにBまたはCから何も保存しないように依頼します。
どんな助けでも、私に祝福を与えるでしょう。
よろしくお願いします、D