Wiem, że używanie modeli domen jako modeli widoku może być złe. Jeśli mój model domeny ma właściwość o nazwie IsAdmin i mam akcję Create controller, aby tworzyć użytkowników, ktoś mógłby zmienić mój formularz i przekazać go POST IsAdmin = true value formularza, nawet jeśli nie wyeksponowałem takiego pola tekstowego w moim widoku . Jeśli używam wiązania modelu, to po zatwierdzeniu mojego modelu domeny ta osoba będzie teraz administratorem. Tak więc rozwiązanie ujawnia tylko te właściwości, których potrzebuję w modelu widoku i za pomocą narzędzia takiego jak AutoMapper, aby odwzorować wartości właściwości mojego zwracanego obiektu modelu widoku na obiekt mojego modelu domeny. Ale przeczytałem, że atrybut wiązania na klasie może być używany do instruowania modułu wiążącego, które właściwości powinien i nie powinien wiązać. Więc co tak naprawdę jest przyczyną tworzenia dwóch oddzielnych klas (modelu domeny i modelu widoku), które są istotne, reprezentują to samo, a następnie generują narzut w ich mapowaniu? Czy jest to raczej kwestia organizacji kodu, a jeśli tak, to w jaki sposób uzyskuję korzyści?Dlaczego dwie klasy, model widoku i model domeny?
EDIT
Jednym z najważniejszych powodów, natrafiłem na widoku modelu, który jest oddzielony od Domain modelu jest potrzeba wdrożenia wzorca MVVM (w oparciu o Martina Fowlera PM wzór) do zarządzania złożone interfejsy użytkownika.
Sprawdź również to pytanie http://stackoverflow.com/questions/3094633/bestpractice-mixing-view-model-with-domain-model –