DTO パターンを使用して、ドメイン オブジェクトをサービス レイヤーからリポジトリにマーシャリングし、NHibernate を介してデータベースにダウンします。
DTO をレポジトリ (CustomerDTO など) から取り出して、それをサービス層のドメイン オブジェクト (Customer) に変換するという問題に遭遇しました。次に、同じ Customer オブジェクトを含む新しいオブジェクト (SalesOrder など) を保存しようとします。これは、リポジトリにプッシュするために、SalesOrderDTO (および CustomerDTO) に変換されます。
NHibernate はこれを気に入らず、CustomerDTO が重複レコードであると文句を言います。これは、同じセッションで最初の CustomerDTO が引き出され、返されたものが前後に変換されたため、これを同じオブジェクトとして認識できないためであると想定しています。
私はここで立ち往生していますか、これを回避する方法はありますか?
ありがとう
ジェームズ