10

Web Apiを使用して構築されたチャットアプリケーションバックエンドがあり、複数のデータベースエンティティをクライアントに直接公開しています。エンティティをDTOにマップするための良い点があるかどうか、または現在のようにエンティティを公開し続ける必要があるかどうか疑問に思いました。明確にするために、私はDTOと非DTOの一般的な質問をしているのではなく、エンティティのほとんどのフィールドがおそらくクライアントによって使用されるため、このシナリオでそれを使用することの利点を尋ねています。

4

2 に答える 2

15

はい、これが 1 人の人物によって開発された小規模なアプリケーションであり、完成までに数日しかない場合は、エンティティを公開できます。

将来成長する可能性のあるアプリケーションを構築する場合は、DTO の使用を検討する必要があります。ドメイン エンティティはデータの表現に最適ではないからです。ドメイン エンティティは、クライアント側で必要なものとは異なり、常に多かれ少なかれ持っています。

AutoMapperというツールを使用して、ドメイン エンティティを DTO にマップできます。

いくつかのデモ: http://www.codeproject.com/Articles/61629/AutoMapper

于 2013-01-14T07:00:18.510 に答える
5

他のアプリケーションと同じ利点。アプリに特定の利点はありません。DTO を使用することは、本質的に分離作業であり、メソッドからプロパティを分離します。現時点では、データベース オブジェクトを渡しています。そうすることは、必要以上に渡し、必要以上に公開していることを意味する可能性があります。また、操作がどのように実行されるかについても、多くのことを暗示しています。繰り返しますが、物事を分割する努力から何を得ようとしていますか?

于 2013-01-14T07:05:49.853 に答える