ASP.NET MVC и веб-службы
Влияет ли добавление веб-службы на мой проект ASP.NET MVC на всю концепцию MVC?
Эта веб-служба (WCF) зависит от уровня модели от моего проекта MVC для взаимодействия с внутренним контентом (поэтому мне кажется, что он должен быть частью решения MVC).
Должен ли я добавить это на уровень контроллера или модели?
Ответы
Ответ 1
Похоже, вы должны разделить свою модель на свою собственную сборку и ссылаться на нее из своего MVC-приложения и WCF-приложения.
- YourApp.Data - Доступна общая модель и доступ к данным
- YourApp.Web - Если вы хотите больше поделиться своими веб-приложениями
- YourApp.Web.Mvc
- YourApp.Web.WebService
Если вы хотите использовать WebServices MVC-стиль, возможно, вам следует использовать MVC для создания собственного REST-приложения.
Ответ 2
Есть ли какая-то конкретная причина, по которой вам нужно добавлять веб-службы в свое приложение MVC? Если нет конкретной причины, вы должны использовать свои контроллеры в RESTful так же, как и веб-сервис RESTful.
Отправляйте сообщение от Rob Connery за дополнительной информацией:
ASP.Net MVC: использование архитектуры RESTful
Ответ 3
Разделение модели на собственный проект не нарушает шаблон "MVC". Во-первых, это просто - образец. Цель шаблона MVC заключается в четком определении между вашими данными, обработчиками данных и ведущими и тем, как вы взаимодействуете между ними. Лучший способ сделать это - как предложил Себ:
- YourApp.Datali >
- YourApp.Web.Mvc
- YourApp.Web.WebService
Что-то, что может вам помочь, это MVC Storefront, с которым собрался Роб Конэри. Посмотрите видео здесь:
MVC Storefront Video Series
И если вы хотите посмотреть фактический код в своем браузере, чтобы быстро увидеть, как он это сделал, перейдите сюда:
MVC Storefront Code Code Browser
Ответ 4
Я не думаю, что разделение модели на ее собственную сборку имеет какое-либо отношение к тому, используете ли вы MVC, у вас все еще есть модель. Где это неуместно?
Ответ 5
У меня все получилось.
Посмотрите мой результат на мой блог
ps: Я не считаю, что это нарушит концепцию MVC, если вы считаете, что веб-сервис является моделью репозитория, потому что все веб-службы возвращают дамп XML.
Ответ 6
Я добавил веб-сервисы в свое приложение, и он работает хорошо. Я не считаю, что это нарушает MVC, потому что это альтернативный интерфейс вашей модели. MVC не подходит для веб-служб, потому что веб-службы не имеют представления.
Ответ 7
Думайте о веб-сервисах и базах данных как о том же. Согласно этой аналогии, я считаю, что имеет смысл размещать ваши действия в веб-сервисах, где вы размещаете логику базы данных.