REST Web Services с использованием MVC, это хорошая идея? - PullRequest
7 голосов
/ 06 марта 2012

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

Таким образом, имея это предвзятое мнение, при рассмотрении написания веб-сервисов REST с использованием MVC 3 (я знаю, что MVC 4 имеет RESTAPI уже готов, но я жду полного релиза) Мне интересно все обычные вещи типа «это хорошая идея», «это выдержит интенсивное использование» и «я просто пишу игрушечные веб-сервисы, которые другие разработчики будутсмеяться над ".

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

Любая помощь?

Ответы [ 5 ]

5 голосов
/ 06 марта 2012

Я делал это несколько раз, я все еще использую это в производстве и не получил никаких жалоб.Я на самом деле думаю, что это хорошее решение, потому что его так просто установить и поддерживать.Не то, чтобы это невероятно тяжелый xml-конфигурирующий wcf материал ..

4 голосов
/ 06 марта 2012

Я бы посоветовал вам взглянуть на ServiceStack: http://www.servicestack.net/. Он не только достаточно зрелый, но и может помочь вам создать более чистый код.

4 голосов
/ 06 марта 2012

Возможно, вы также захотите взглянуть на материал WebAPI, который находится в процессе выпуска (.net 4.5):

http://weblogs.asp.net/scottgu/archive/2012/02/23/asp-net-web-api-part-1.aspx

Это очень сильно связано сразоблачение простых html сервисов.

3 голосов
/ 06 марта 2012

Это действительно зависит от того, что вы планируете делать со своим приложением. Да, вы могли бы написать веб-сайт MVC, который удваивается как RESTful-сервис. Однако затем вы очень тесно привязываете свой уровень пользовательского интерфейса к своему логическому уровню, и это то, что вам действительно нужно учитывать. Я работаю на сайте MVC с сервисом ServiceStack REST (уже упоминавшимся @Ioannis) . Причина, по которой я не сделал MVC моей службой REST, заключается в том, что я не хотел, чтобы какие-либо изменения в моем пользовательском интерфейсе потенциально влияли на любое стороннее приложение, которое может использовать мою службу логики. Таким образом, если вы тщательно продумываете последствия того, что ваш сайт станет вашим RESTful-сервисом, то любое решение может быть приемлемым. :)

1 голос
/ 06 марта 2012

Как уже упоминали другие, ServiceStack предоставляет надежную, краткую среду REST Web Services Framework, позволяющую без особых усилий разрабатывать сквозную типизированную идиоматическую API C #.

ServiceStack также включает в себя ряд высокопроизводительных компонентов, которые глубоко интегрируются с ASP.NET MVC с использованием ServiceStack.Host.Mvc NuGet.

Чтобы узнать больше о преимуществах, которые ServiceStack может добавить в ваш проект MVC, смотрите: http://www.servicestack.net/mvc-powerpack/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...