1

私は現在、UIの前面にMVC4を使用するN層アプリケーションに取り組んでいます。このアプリケーションは、WCFサービスと通信し、EFを使用してOracleからデータを取得するビジネスレイヤーを呼び出します。

EFから入力され、WCFサービスを介してUIに送信される一連のDTOオブジェクトを作成しました。私の質問はこれです...

UIにサービス参照を追加すると、DTOクラスがReference.csのサービスコードの一部を再作成します。これで問題ありませんか、それとも元のDTOクラスプロジェクトへの参照を追加する必要がありますか?

それは純粋に開発者の選択ですか、それとも特定の利点や落とし穴、あるいはどちらかのアプローチがありますか?

どんな助けでも大歓迎です。

ありがとう、ニック

4

1 に答える 1

1

元のコントラクトアセンブリを使用する利点は、そのコントラクトが変更されると、クライアントアセンブリでコンパイルエラーが発生することです。生成されたクライアントを使用した場合、それはコンパイルされ、実行時にクラッシュします。特に継続的インテグレーションでは、エラーをできるだけ早く取得する必要があります。コンパイル時間は非常に長くなります。

生成されたクライアントの実装によっては、INotifyPropertyChangedがすでに実装されている場合があります。それはおそらくあなたのDTOができる以上のものです。DTOはそれを実装すべきではありません。したがって、とにかくクライアント側ですべてのDTOを再実装してこのインターフェイスを使用する場合は、生成されたクラスを使用することですでにこの利点が得られると主張するかもしれません。

つまり、最終的には...それは純粋に開発者の選択です。

于 2013-03-11T12:33:07.093 に答える