Tworzenie osobnych viewmodeli i DTO

Odpowiedz Nowy wątek
2018-12-01 10:27
0

Powiedzmy, że mam aplikację webową MVC i chcę dodać do niej REST API, z którym komunikowała by się np. aplikacja mobilna. Co w takim przypadku powinienem zrobić?
1) Stworzyć "kopie" każdego viewmodelu, zmienić nazwy z XViewModel na XDto i wyrzucić metadane dotyczące wyświetlania w widoku.
2) Serializować do JSONa istniejące viewmodele.
3) Nie używać nazw XViewModel, tylko XModel, i nie dodawać metadanych dotyczących wyświetlania - wtedy będzie można używać tych modeli i w MVC, i w Web API.

Pozostało 580 znaków

2018-12-01 22:42
  1. Zastanowić się, czy aplikacja mobilna będzie potrzebowała tych samych danych, co webowa? Moim zdaniem niekoniecznie, więc trzeba i tak trzymać dwa oddzielne zestawy DTO. Czyli 1., ale też nie do końca - bo po co tam jakieś sufiksy Dto? Raczej Request i Response dla głównych obiektów, a dla podobiektów nic nie trzeba.

A jeśli naprawdę jest to to samo, to mi się wydaje, że w MVC jest taka możliwość, żeby jedna klasa to było takie DTO, a w drugiej mieć jakoś te wszystkie atrybuty dla prezentacji. Nie pamiętam, czy przez partial, czy tam z czegoś było trzeba dziedziczyć i jakiegoś fluent API użyć. Ale dałbym rękę uciąć dowolnemu użytkownikowi, że tak się dało. ;)


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."

Pozostało 580 znaków

2018-12-03 08:36
5
somekind napisał(a):

Nie pamiętam, czy przez partial, czy tam z czegoś było trzeba dziedziczyć i jakiegoś fluent API użyć. Ale dałbym rękę uciąć dowolnemu użytkownikowi, że tak się dało. ;)

Zostawiam dla potomności ten sposób, bo nie łatwo go znaleźć
MetadataTypeAttribute Class

asp.net core jest trochę inaczej:
https://stackoverflow.com/questions/34576921/asp-net-core-metadatatype-attribute-not-working/37375987#37375987


#Dżunior React Devloper wanna be#
O właśnie to! Próbowałem to znaleźć przez jakieś 5 minut i sie poddałem. - somekind 2018-12-03 12:26
Ooo. Dzięki. Też kiedyś szukałem. - jacek.placek 2018-12-03 21:03

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0