11

私は最近、いくつかの分散型クライアント/サーバー プロジェクトに取り組んできましたが、DTO オブジェクトをエンティティに、またはその逆に変換するときに常に遭遇する問題の 1 つです。このタイムシンクに対する「簡単な」解決策を誰かが持っているかどうか疑問に思っていましたか?

私が考えたことの 1 つは、リフレクションを使用してある種の翻訳を考え出すことでした...プロパティ名がワイヤの両側でまったく同じであることを確認する必要があると思いますが、うまくいくようです。

この時間の一部を私の開発に費やすのを避ける方法を探しています。

ありがとう!!

4

4 に答える 4

3

痛みとリスク

手でプロパティを取得/設定する!これを試しましたか: http://dozer.sourceforge.net/

Bean を Bean に変換するための柔軟で構成可能なフレームワーク。役立つかもしれません!

于 2008-10-15T13:35:50.923 に答える
3

私は最近AutoMapperを使用していますが、魅力的に機能します。

于 2009-09-17T20:08:12.347 に答える
0

XDoclet のようなツールを使用して (スクリプトを作成するのはそれほど難しいことではありませんが)、転送オブジェクトと単純なエンティティ変換を自動的に生成することに成功しました。

とはいえ、Entity の変換がリフレクションを使用して実行できるほど単純であると考える場合、DTO の代わりに Entity オブジェクトをネットワーク経由で渡すことができない理由はありますか? 本格的な DTO よりも、わずかにカスタムのシリアル化を行う方がよい場合があります。

于 2008-10-15T13:36:12.407 に答える
0

ValueInjecterを使用すると、何でもマップできます。

 object <-> object
 object <-> Form/WebForm
 DataReader -> object

そして、次のようなクールな機能があります: 平坦化と非平坦化

ダウンロードには多くのサンプルが含まれています (asp.net mvc、web フォーム、winform、単体テストのサンプル アプリケーション)

于 2010-06-15T08:53:48.160 に答える