2

差分クライアント (asp、sl) のデータを処理する SOA があります。このデザインのベースは、私のビジネス モデルのドメインです。転送、クライアントへの表示には、DTO を使用します。ドメインを DTO にマッピングするには、AutoMapper を使用します。ここで、クライアントからの新しいエンティティを永続化する必要があります。このシナリオでも DTO を使用したいと思います。このデザインに慣れていないので、いくつか質問があります

1)クライアントでDTOを構築し、それをネットワーク上のWebサービスに送信することは良い習慣ですか? 多分私は私のドメインを渡す必要がありますか?

2) 1 つのドメインに複数の DTO を設定することは可能ですか (1 つはグリッドで表示され、もう 1 つは保存されます)。保存するには、クライアントですべての非プリミティブな小道具を設定する必要があります。

3) DTO -> ドメインへ。int を取得した場合、AutoMapper を使用してこの ID の NHibernate Proxy を生成できますか、または手動で行う必要があります。

あなたの経験と実践はとても興味深いものです。ご回答ありがとうございます!!!

4

2 に答える 2

3

画面とコマンド固有の DTO を使用することをお勧めします。

この例は、ユーザーが顧客の表示画面を見ているときに、その顧客のすべての情報 (遅延読み込みが必要な場合はほとんど) を含む単一の DTO がある場合です。

この手法の価値は、データが複数のソースから取得できることです。これにより、画面のセットアップ方法とは対照的に、ドメインをモデル化することができます。また、マッピングを更新するだけでよいため、画面を気にせずにドメインを変更できます。

プログラミング言語によっては、ドメインと DTO 間のマッピングを簡単に作成できるAutoMapper (C# 用) などのツールがある場合があります。

于 2010-06-01T15:07:02.810 に答える
-1

ドメインモデルエンティティの代わりに、ネットワーク上のDTOを使用すると、アーキテクチャがより柔軟になります。ドメインごとに複数のDTOを持つことができます。

于 2010-06-01T09:35:05.080 に答える