2011-02-10 6 views
2

私はPOCOでEFを使用し、DTOを電信線で私のWCFのクライアントに転送する方法を検討し始めています。EF POCO DTO WCFアダプタパターン

クライアントにPOCOを送信するのではなく、DTOを使用するのがよいアーキテクチャ設計のようです。

私はこれについて読んでおり、アダプタパターンを使用してPOCOをDTOに変換すると述べています。

私は、POCO => DTOに使用されているアダプターのパターンを記述している記事は見つかりませんでした。

誰かがこれについて少しの光を放つことができますか?

答えて

3

Adapterは、正確な意味を持つGoWパターンです。あなたはPOCOとDTOの上でそれを使うことについて読むための特別な記事は必要ありません(他のクラスと同じです)。しかし、私はあなたが実際に実際のアダプタを望んでいないと思う。あなたは、POCOをDTOに、そしてその逆に変換するものが必要です。多くの開発者はAutoMapperという非常に良いライブラリを使用しています。私は通常、アダプターもAutoMapperも使用しません。代わりに、私のDTOはToPocoFromPocoという静的メソッドを持っています - それは愚かです、より多くのwrittingですが、誰もがそれを理解しています。

+0

アダプターのパターンと一緒に使用する方法を知りました。このhttp://www.dofactory.com/Patterns/PatternAdapter.aspxを使ってみると、目標はDTOなので...私はポコを包むためのアダプタを作成するのですか? ... – pdiddy

1

このpostは、2つの純度について語ります。

しかし、それらを1つから他のものに変換する限り、私は過去に拡張メソッドを使用しました。

POCOが電線で送信される前に、私はこのようなものを持っています。

accountPoco.toDTO() 

これをWCFデータ変換オブジェクトobjに変換し、シリアル化してワイヤを介して送信します。他の側では

私は戻ってPOCOに変換

accountDto.toPOCO() 

を持っています。

これは最もエレガントではありませんが、機能します。

関連する問題