Я полностью запутался между веб-сервисами WCF и ASMX. Я использовал много веб-сервисов на своей ранней стадии, и теперь появилась новая вещь под названием WCF. Я все еще могу создать WCF, который функционирует как веб-сервис. Я думаю, что в WCF будет больше вещей.
Каковы различия между WCF и веб-сервисами? Когда следует использовать каждый из них?
wcf
web-services
asmx
Shailesh
источник
источник
Ответы:
Кит Элдер хорошо сравнивает ASMX с WCF здесь. Проверьте это.
Еще одно сравнение ASMX и WCF можно найти здесь - я не на 100% согласен со всеми пунктами, но это может дать вам представление.
WCF - это, в основном, «ASMX на стереоидах» - это может быть все, что ASMX мог бы - плюс намного больше! ,
ASMX это:
WCF может быть:
Вкратце: WCF здесь, чтобы полностью заменить ASMX.
Проверьте Центр разработчиков WCF на MSDN .
Обновление: ссылка кажется мертвой - попробуйте это: Что такое Windows Communication Foundation?
источник
Веб-сервисы ASMX могут вызываться только по HTTP (традиционный веб-сервис с .asmx). В то время как служба WCF или компонент WCF могут быть вызваны любым протоколом (например, http, tcp и т. Д.) И любым типом транспорта.
Во-вторых, веб-сервисы ASMX не являются гибкими. Тем не менее, WCF Services являются гибкими. Если вы делаете новую версию сервиса, вам нужно просто выставить новый конец. Таким образом, услуги являются гибкими, и это очень практичный подход, учитывающий текущие тенденции бизнеса.
Мы разрабатываем WCF как контракты, интерфейс, операции и контракты данных. Как разработчик, мы больше ориентируемся на сервисы бизнес-логики и не должны беспокоиться о стеке каналов. WCF - это унифицированный API-интерфейс для любых служб, поэтому мы создаем службу и используем информацию о конфигурации для настройки механизма связи, такого как HTTP / TCP / MSMQ и т. Д.
источник
endpoint
я думаю. Нравится<endpoint address="http://api.microsofttranslator.com/V1/soap.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_LanguageService1" contract="TranslatorService.LanguageService" name="BasicHttpBinding_LanguageService3" />
Это очень старый вопрос, но я не чувствую, что преимущества ASMX изобразили справедливо. Хотя веб-службы ASMX не очень гибки, они очень просты в использовании и понимании. В то время как WCF более гибок, он также более сложен, чтобы встать и настроить.
Веб-сервисы ASMX готовы встать и добавить их в качестве ссылки на веб-сервис, как только вы добавите файл. (при условии, что ваш проект собирается)
Для простого рабочего процесса разработки
create webservice
->run webservice
->add webservice reference
у веб-сервиса ASMX есть очень мало того, что может пойти не так, не так много, что вы можете неправильно настроить, и в этом его сила.В ответ на те, которые утверждают, что WCF заменяет ASMX, я отвечу, что WCF потребуется добавить модернизированный режим конфигурации KISS, чтобы полностью заменить ASMX.
Пример web.config для веб-службы ASMX:
источник
WCF полностью заменяет веб-сервисы ASMX. ASMX - это старый способ создания веб-служб, а WCF - текущий способ создания веб-служб. Все новые разработки веб-сервисов SOAP на клиенте или сервере должны выполняться с использованием WCF.
источник
Сейчас много говорят о простоте веб-сервисов asmx по сравнению с WCF. Позвольте мне прояснить несколько моментов здесь.
Не стоит забывать, что я был одним из тех парней, которым нравились сервисы asmx больше, чем WCF, но в то время я не очень хорошо знал сервисы WCF и их возможности. Я был напуган конфигурациями WCF. Но я осмелился и попытался написать несколько собственных сервисов WCF, и когда я узнал больше о WCF, у меня нет никаких запретов на WCF, и я рекомендую их всем и каждому. Удачного кодирования !!!
источник