サービスはオブジェクト指向ではありません。 OOADベースの設計があるとします。 翻訳レイヤーを使用して、それをDTO(何も振る舞わない)に変換することができます。しかし、これはコードの量が非常に大きくなる原因となります。 WCF(C#経由)のこれに対する代替案は何ですか?SOAのトランスレーション層の代替手段:WCF
SOAとOOADの間にこのような移行があることをお勧めしますか?私たちがSOAを持っているときやそのようなマッピング手法を使うときには、OOADを避けるべきでしょうか?
「動作を削除した後にドメインから直接DTOを作成するのではなく、「操作固有のDTO」を作成することをお勧めしますか? 「オペレーション固有のDTOアプローチ」のためのツールはありますか?
AutoMapperは「動作固有のDTO」または「動作のないドメインからのDTO」を生成しますか?
注:操作特定DTOのアプローチは、ビジネスエンティティとデータコントラクトの間で翻訳Service Layer Guidelines
デザイン変換オブジェクトから“Do not use Abstract Base class in Design; but in Modeling/Analysis”
エキスに答えで参照することができます。
REFERENCES:
- How to restrict web service data contract properties based on user role
- SOA Question: Exposing Entities
- What is the best way of using DTOs in a SOA application?
- WCF Message & Data Contract, DTO, domain model, and shared assemblies
何に変わりはありませんか?ここで解決しようとしている問題は何ですか? – Oded
@Oded。 "翻訳レイヤ"のアプローチに相応して – Lijo