Я провел долгое время, учась, как настроить WCF с точки зрения добавляющей аутентификации и т.д. по УСПОКОИТЕЛЬНОМУ сервису; я создал некоторые хосты службы поддержки, затем добавил способность использовать контейнер МОК для фактического создания сервисного экземпляра и т.д. и т.д.
У нас есть iPhone/приложения для iPad плюс некоторые другие вещи gadgety-типа (технический термин!), которые теперь используют их (XML на i-платформе, JSON для на базе браузера) и я очень доволен производительностью и простотой, с которой мы можем добавить новые операции и т.д.
Я изучил все недостатки сериализаторов DataContract (и теперь используйте их в единичных случаях к объектам чтения-записи за пределами WCF), и после той крутой кривой обучения, но теперь, когда у нас есть они, я очень доволен ими всеми.
Теперь у нас есть ряд новых веб-проектов, для которых я воспользовался возможностью использования MVC - и был соответственно впечатлен этим; образцовая привязка, в частности, действительно ударяет задницу.
Я теперь смотрю на подобную УСПОКОИТЕЛЬНУЮ пчелу для этих веб-проектов (они все будут подобными сайтами, но различным брендингом и незначительными изменениями в бизнес-логике в зависимости от пользовательской потребности). Первоначально, я ожидал, что вся эта работа над WCF сослужит нам хорошую службу - но MVC имеет свой собственный путь разработки для УСПОКОИТЕЛЬНОГО XML/JSON, и я теперь пойман между двумя.
Если бы Вы пишете сайт MVC, Вы когда-либо использовали бы WCF для реализации его API REST?
Я выведу один аргумент в пользу использования WCF - что, правильно записанный, это может быть изолировано для выполнения как сервис окон без потребности в веб-сервере. Однако это походит на отчаянный случай!
Обновление
Я должен сказать, что теперь реализовал 3, разделяют большие сервисы REST с помощью MVC 2 и 3, и это - радость для работы с. Я записал образцовые редакторы связей для переноса DataContractSerializer WCF для XML, и конечно поддержка JSON очень хорошо. Я не возвращусь теперь.
Я никогда не использовал WCF, но в настоящее время использую MVC2 для реализации REST API.
По большей части он хорошо подходит, но есть некоторые пробелы, и это требует некоторого обучения. Мне нужно было использовать MVCContrib для лучшей поддержки XML. Я использовал фьючерсы MVC для поддержки отправки объекта JSON в метод действия (см .: http://haacked.com/archive/2010/04/15/sending-json-to-an-asp-net- mvc-action-method-argument.aspx ). Мне также нужно было взять исходный код для этого и изменить его, чтобы он мог поддерживать XML.
Я слышал, что есть некоторые REST-фреймворки, которые работают поверх .NET MVC, но у меня не было возможности опробовать их.
Если вы знакомы с WCF и в прошлый раз он работал хорошо, то у меня возникнет соблазн придерживаться того, что вы знаете.
Я давно использовал WCF для REST, и я бы порекомендовал использовать MVC. Если вы хотите иметь дело только с XML и Json, и если ваше пространство URI относительно простое, вы, вероятно, могли бы обойтись с WCF. Однако, как только вы откажетесь от основных вещей, вам нужно будет хорошо познакомиться с WCF, чтобы обойти его поведение по умолчанию.