Каковы различия между WCF и традиционным ASP.NET Web - PullRequest
2 голосов
/ 11 июня 2009

Я новичок в WCF и веб-сервисах в целом. Какие улучшения принесла WCF? Кто-нибудь может привести пример традиционной веб-службы, написанной с использованием WCF, и указать на различия и преимущества?


Повторяющийся вопрос Перемещение веб-сервисов ASP.net в WCF

Ответы [ 3 ]

5 голосов
/ 15 июня 2009

РЕДАКТИРОВАТЬ : Подумайте, я нашел ответ, который вы искали для параллельного сравнения на основе кода, а еще лучше - от MSDN: Сравнение веб-сервисов ASP.NET с WCF на основе разработки

Есть несколько связанных вопросов:

Однако вы попросили провести параллельное сравнение, и в этом случае я думаю, что статья Сэма Wcf против ASMX - это больше, чем вы ищете.

Цитировать дословно (дайте мне знать, если я просто оставлю это как ссылку):

WCF против ASMX

Поддержка протоколов

WCF

  • HTTP
  • TCP
  • Именованные трубы
  • MSMQ
  • Custom
  • UDP

ASMX

  • только HTTP

Хостинг

ASMX

  • Может быть размещен только с HttpRuntime на IIS.

WCF

  • Компонент WCF может быть размещен в любой среде .NET 3.0, например, в консольном приложении, приложении Windows или IIS.
  • Службы WCF называются «службами», а не веб-службами, поскольку вы можете размещать службы без веб-сервера.
  • Самостоятельное размещение сервисов дает вам возможность использовать транспорты, отличные от HTTP.

WCF обратная совместимость

  • Цель WCF - предоставить унифицированную модель программирования для распределенных приложений.
  • Обратная совместимость
  • WCF использует все возможности существующих технологических стеков, не полагаясь ни на один из них.
  • Приложения, созданные с использованием этих более ранних технологий, будут продолжать работать без изменений в системах с установленным WCF.
  • Существующие приложения могут обновляться с помощью WCF
  • Новое транзакционное приложение WCF будет работать с существующим приложением транзакций, построенным на System.Transactions

Интеграция WCF и ASMX

  • WCF может использовать привязки WS- * или HTTP для связи со страницами ASMX

Ограничения ASMX :

  • Страница ASMX не говорит вам, как доставить ее по транспорту и использовать определенный тип безопасности. Это то, что WCF значительно улучшает.
  • ASMX тесно связан со временем выполнения HTTP и зависимостью от IIS для его размещения. WCF может быть размещен любым процессом Windows, который может разместить .NET Framework 3.0.
  • Служба ASMX создается для каждого вызова, в то время как WCF предоставляет вам гибкость, предоставляя различные варианты создания экземпляров, такие как Singleton, частный сеанс, для вызова.
  • ASMX обеспечивает возможность взаимодействия, но не обеспечивает и не гарантирует сквозную безопасность или надежную связь.
3 голосов
/ 11 июня 2009

ASP.NET Web Services - это почти все. Веб-сервисы. Они основаны на SOAP / WSDL и предоставляют свои услуги только в Интернете.

Службы WCF предлагают гораздо более гибкую структуру. Например, в зависимости от того, как определена служба, это может быть веб-служба, размещенная в IIS, которая сериализует свои данные через XML и использует модель REST ... или это может быть удаленная служба Windows, размещенная в своем собственном процессе и сериализует свои данные через двоичный файл. Все это достигается с помощью различных контрактов на обслуживание / данные в WCF.

Короче говоря ... вы можете сделать службу WCF практически идентичной веб-службе .NET 2.0 довольно легко, но, немного поработав, вы сможете сделать БОЛЬШЕ БОЛЬШЕ.

3 голосов
/ 11 июня 2009

WCF гораздо шире, чем веб-сервисы ASP.Net.

  • WCF может работать в любом приложении. Веб-сервисы APS.Net работают только в IIS.
  • WCF поддерживает такие модели, как ReST, Remoting, SOAP, MSMQ и т. Д. ASP.Net поддерживает только SOAP
  • WCF более настраиваемый.
  • WCF поддерживает более декларативный способ программирования. Вы можете сделать больше с меньшим количеством кода.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...