11

シンプルな 3 層アーキテクチャを使用しています。これでは、DTO クラスを使用して UI、BL、および DL の間で通信しています。では、レイヤー間の通信のためのより良い方法はありますか? またはこれは正しい方法ですか?

4

3 に答える 3

10

DTO (データ転送オブジェクト) は、コンシューマーとサービスの間でデータを転送するときに使用するディストリビューション レイヤーの概念です。したがって、サービスを公開しない場合は、DTO から降りてください。

あなたの質問に答えるには、アプリケーションの複雑さにも依存します。単純な場合は、CRUD 操作を使用するかDataTableDataSet通信に を使用することもできます。

それ以外の場合、DDD の Domain Entity は、データ アクセス層、ビジネス ロジック層、プレゼンテーション層などのレイヤー間の通信のコア オブジェクトです。

基本的に、アプリケーションにはいくつかの異なるタイプのオブジェクトがあります。

  1. DTO、サービスを公開するときに使用します。主なオブジェクトは、消費者とサービスの間で通信します。
  2. ビュー モデル、UI をサポートするプレゼンテーション層のオブジェクト。
  3. ドメイン エンティティは、ビジネス ロジック層からのもので、ビジネス ロジックを格納します。

次の用語には注意してください。

  1. Tier : データベース サーバー、Web サーバーなどの物理的な意味です。
  2. レイヤー: 論理レイヤーを意味します: パーセンテーション レイヤー、ビジネス ロジック レイヤー、データ アクセス レイヤー。
于 2012-09-20T06:03:59.033 に答える
7

このチュートリアルを読んでください。非常に有益です。シナリオに適した DTO を決定するのに役立ちます。

于 2012-09-20T05:25:27.233 に答える
1

@Talha の回答に加えて、この記事をお勧めします。これは EF 指向ですが、そこで説明されている概念は一般的なものです。

于 2012-09-20T05:42:46.203 に答える