Напоследък работя с MVC4 и се чувствам доста комфортно със стека View > View Model > Controller > Service > Repository с IoC и всичко останало. Харесва ми. Работи добре. Въпреки това, ние се движим към платформа за приложения за цялата компания, която ще обслужва по-голямата част от всички нужди на бизнес приложенията в компанията.
Основни цели на архитектурата:
- MVC сайт, обърнат към клиента
- Вътрешен администраторски уеб сайт
- Изобилие от планирани задачи за импортиране/експортиране на данни/и т.н. към трети страни
- Сервизен автобус, разположен в средата, за да изложи бизнес събития
- Публичен API за потребителска консумация
Първоначалните ми мисли са да въведа „сервизен слой на предприятието“, като приложа моите сервизни интерфейси към WCF договори и регистрирам WCF прокси класовете в моя IoC. Това би ми позволило да използвам отново същия модел, който използвам в момента, но не намерих много примери за това на практика. Освен този човек.
Да си призная обаче, не съм сигурен кое е най-доброто решение за проект от такъв мащаб.
1) Какви са съображенията при централизиране на бизнес услуги?
2) Как това се отразява на междусекторни проблеми като валидиране, упълномощаване и т.н.? Мислех, че вече съм разбрал това, но поставянето на DTO между слоевете променя всичко това.
3) Имам опит с WCF, но чувам, че Service Stack е на мода... Трябва ли SS да бъде внимание със своята RESTful доброта?