Подтвердить что ты не робот

ASP.NET MVC и веб-службы

Влияет ли добавление веб-службы на мой проект ASP.NET MVC на всю концепцию MVC?

Эта веб-служба (WCF) зависит от уровня модели от моего проекта MVC для взаимодействия с внутренним контентом (поэтому мне кажется, что он должен быть частью решения MVC).

Должен ли я добавить это на уровень контроллера или модели?

4b9b3361

Ответ 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.Data​​li >
  • 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

Думайте о веб-сервисах и базах данных как о том же. Согласно этой аналогии, я считаю, что имеет смысл размещать ваши действия в веб-сервисах, где вы размещаете логику базы данных.