シンプルな 3 層アーキテクチャを使用しています。これでは、DTO クラスを使用して UI、BL、および DL の間で通信しています。では、レイヤー間の通信のためのより良い方法はありますか? またはこれは正しい方法ですか?
質問する
6689 次
3 に答える
10
DTO (データ転送オブジェクト) は、コンシューマーとサービスの間でデータを転送するときに使用するディストリビューション レイヤーの概念です。したがって、サービスを公開しない場合は、DTO から降りてください。
あなたの質問に答えるには、アプリケーションの複雑さにも依存します。単純な場合は、CRUD 操作を使用するかDataTable
、DataSet
通信に を使用することもできます。
それ以外の場合、DDD の Domain Entity は、データ アクセス層、ビジネス ロジック層、プレゼンテーション層などのレイヤー間の通信のコア オブジェクトです。
基本的に、アプリケーションにはいくつかの異なるタイプのオブジェクトがあります。
- DTO、サービスを公開するときに使用します。主なオブジェクトは、消費者とサービスの間で通信します。
- ビュー モデル、UI をサポートするプレゼンテーション層のオブジェクト。
- ドメイン エンティティは、ビジネス ロジック層からのもので、ビジネス ロジックを格納します。
次の用語には注意してください。
- Tier : データベース サーバー、Web サーバーなどの物理的な意味です。
- レイヤー: 論理レイヤーを意味します: パーセンテーション レイヤー、ビジネス ロジック レイヤー、データ アクセス レイヤー。
于 2012-09-20T06:03:59.033 に答える
7
このチュートリアルを読んでください。非常に有益です。シナリオに適した DTO を決定するのに役立ちます。
于 2012-09-20T05:25:27.233 に答える
1
@Talha の回答に加えて、この記事をお勧めします。これは EF 指向ですが、そこで説明されている概念は一般的なものです。
于 2012-09-20T05:42:46.203 に答える