0

データベーステーブルにエントリを作成し、サービスの応答として一連の関連データとともに同じものを返すようにWCFサービスをセットアップしようとしています。

すべての DataAccess 作業を行うために、リポジトリ パターンで EF を使用しています。渡すパラメータは静かな巨大なリスト(15+)であるため。

複合型 (DTO) は、これを行うためのよりクリーンな方法ですか?. またはこれの他の代替。

よりクリーンでシンプルな実装を探しています...

詳細...

1) サービス側とリポジトリ側の間で共有されるすべてのパラメーター情報を使用して DTO オブジェクトを作成します。

    Public class RecordDTO
    {
     public string param1;
     public string param2;
     .....
     public string param15;

    } 

2) DTO オブジェクトを使用してサービス メソッドからリポジトリに渡します (両方のプロジェクトが DTo にアクセスできる必要があります)。

   Repository.CreateRecord(RecordDTO myRecordObj)

3) リポジトリはこれを受け取り、データを解析し、あらゆる種類の DataAccess ロジックを実行して、サービスとクライアントを理解する Model オブジェクトを返します。

私はただ調査し、これが可能かどうかを確認しようとしています。

4

1 に答える 1

0

CreateRequest dto を追加し、その中にすべてのパラメータをカプセル化できます。これは多くの理由で優れており、そのいくつかは次のとおりです。

これらのパラメーターを複数のリポジトリ メソッド呼び出しで保存する必要がある場合は、サービス メソッドの実装にトランザクション スコープを追加できます。

これらのパラメータはすべて、この CreateRecord 操作 (1 つのトランザクション) に論理的に属していると思います。そうでない場合は、これを複数のサービス メソッドに分割できます。

于 2012-04-23T21:06:12.347 に答える