2013-01-14 4 views
10

Mam backend aplikacji czatu zbudowany przy użyciu Web Api, w którym wystawiam kilka jednostek baz danych bezpośrednio klientom. Zastanawiałem się, czy istnieją jakieś pozytywne punkty, aby odwzorować jednostki na DTO, czy też nadal powinienem ujawniać te podmioty, tak jak ja obecnie. Dla wyjaśnienia, nie pytam o pytanie ogólne DTO w stosunku do DTO, ale tylko o korzyści wynikające z zastosowania tego scenariusza, ponieważ większość pól w jednostkach prawdopodobnie byłaby używana przez klienta.Aby użyć obiektów przesyłania danych (DTO) na serwerze apletu aplikacji Web Api

+2

W przypadku aplikacji do czatowania funkcja SignalR jest preferowana, a nie ASP.NET Web API: https://github.com/SignalR/SignalR – tugberk

Odpowiedz

14

Tak, możesz odsłonić swoje obiekty, jeśli jest to mała aplikacja opracowana przez jedną osobę i masz tylko kilka dni na jej ukończenie.

Jeśli zamierzasz zbudować aplikację, która może się rozwinąć w przyszłości, powinieneś rozważyć użycie DTO, ponieważ podmioty domeny nie są optymalne do reprezentacji danych. Podmioty encji mają zawsze mniej lub więcej, nie dokładnie to, czego potrzebujesz po stronie klienta.

Możesz użyć narzędzia o nazwie AutoMapper, aby odwzorować podmioty domeny na DTO.

Niektóre demo: http://www.codeproject.com/Articles/61629/AutoMapper

5

sama zaleta, jak w każdej innej aplikacji. W Twojej aplikacji nie ma żadnej konkretnej korzyści. Używanie DTO to zasadniczo ćwiczenie oddzielające, oddzielające właściwości od metod. W chwili przekazywania obiektów bazy danych. Może to oznaczać, że przekazujesz więcej niż wymagane i ujawniasz więcej, niż potrzeba. Sugerujesz także wiele, jak i jak przeprowadzane są operacje. Znowu, co masz zamiar wydostać się z wysiłku dzielenia się?

Powiązane problemy