Первый Аппрох
/\
/ \
V/ \ C <=WCF=> {Business Layer (with business logic) <=> ORM <=> Database}
/ \
--------
M
Второй подход
/\
/ \
V/ \ M <=WCF=> {Business Layer (with business logic) <=> ORM <=> Database}
/ \
--------
C
Основная разница:
- При первом подходе бизнес-объект будет иметь 2 версии. Один загружен со свойствами внутри бизнес-уровня, а другой - тупой версией с несколькими Просмотр определенных свойств, которые будут заполнены Контроллером. В то время как во втором appraoch, будет один класс со всеми свойствами.
- Первый подход кажется немного более изолированным от уровня представления
В обоих случаях контроллер будет отправной точкой.
Что касается мнений, которые я получил от разных людей, то оба они являются допустимыми подходами, и их можно переключать в соответствии с предпочтениями разработчика.
Пожалуйста, поделитесь мыслями.