1

私はEFコードファーストアプローチを使用してmvc4アプリケーションに取り組んでいます。アプリケーションのモデルを書き終え、これまで使用したことのないデータ転送オブジェクト DTO に出会いました。モデルについて私が考えている基本は、データベースからデータを乗客として取得し、必要な場所に降りるタクシー運転手であるということです。では、どのような場合に DTO を使用する必要があるのでしょうか?

4

1 に答える 1

1

モデルを唯一の手段として使用する場合の問題は、モデルが運ぶデータが多すぎる場合があることです。たとえば、SSN ではなく、すべてのユーザー情報を表示する必要がある場合があります。もう1つの懸念は、過剰投稿です。たとえば、モデルを WEB API で使用して JSON オブジェクトを逆シリアル化する場合、誰かが追加情報を簡単に貼り付けることができます。そして、あなたのモデルがこの情報を DB まで運ぶ場合。これらの問題を制限するために、ビュー モデル、DTO、またはその両方を作成できます。これにより、クライアントに「表示される」フィールドの量が制限されます。DTO ハイドレーターは、ハイドレーション中に存在しないフィールドを単純にスキップします。この自動マッパーを確認してください http://www.dnrtv.com/default.aspx?showNum=155

于 2012-12-18T23:10:11.110 に答える