コントローラーがEF 5.0エンティティのリポジトリを使用するビジネスレイヤーを呼び出すWCFサービスレイヤーを呼び出すASP.NET MVC 4プロジェクトがあります。次に、結果が POCO エンティティとしてコントローラーに返されます。
WCF サービスがライブラリとして直接参照されている間は問題なく動作しますが、シリアル化する必要があるため、サービスとして参照されていると動作しないことがわかっています。ProxyCreation を有効にすると、これは不可能です。
生成された POCO エンティティを使用しているため、DTO を作成したくありません。POCOエンティティがサービスレイヤーに到達する前にのみ変更を追跡したい.
多くの人が、POCO と同じ場合でも DTO を使用することについて話します。そうすると、自動生成されたコピーされたクラスを名前が異なるだけで作成して、「DTO としてのプロキシ無効 POCO」になる可能性があります。 .
サービス層から返されたときにオブジェクトをシリアル化できるように、POCO のプロキシ クラスを強制終了できますか?
また、このアイデアが良い習慣であるかどうかもわかりません。しかし、「クリーンな」エンティティをコントローラーに送信して、ViewModel にマップする準備ができたら素晴らしいと思います。パフォーマンスも求めています。