Ключевое отличие: веб-сервис можно описать как систему программных компонентов, доступных через Интернет. Он состоит из протоколов и стандартов, которые используются для обмена данными. Таким образом, это помогает в совместимом обмене данными между машинами по сети. WCF обозначает Windows Communication Foundation. Его можно описать как основу для построения сервис-ориентированных приложений. Это обеспечивает среду выполнения для сервисов. Веб-сервисы WCF являются частью гораздо более широкого спектра, чем веб-сервисы.
- Сервисная ориентация. Акцент делается на создании сервис-ориентированных приложений.
- Функциональная совместимость - для обеспечения совместимости веб-служб применяются последние отраслевые стандарты.
- Множественные шаблоны сообщений - для обмена сообщениями доступны многочисленные шаблоны.
- Метаданные службы - форматы, такие как WSDL и схема XML, используются для поддержки публикации метаданных службы.
- Безопасность - доступны функции безопасности, такие как шифрование и аутентификация.
- Durable Message - сообщение с долговечным шаблоном всегда сохраняется в базе данных.
- Поддержка AJAX и REST
- Расширяемость - предлагает расширяемость в различных областях, таких как расширение привязок, канальный уровень, serviceHost и т. Д.
Чтобы сравнить веб-сервисы с сервисами WCF, можно определить разницу между веб-сервисом в ASP.net и сервисом WCF.
Сравнение между веб-сервисами и WCF в ASP.net:
Веб-сервисы | WCF | |
Определение | Веб-сервис может быть описан как система программных компонентов, доступных через Интернет. Он состоит из протоколов и стандартов, которые используются для обмена данными. Таким образом, это помогает в совместимом обмене данными между машинами по сети. | WCF обозначает Windows Communication Foundation. Его можно описать как основу для построения сервис-ориентированных приложений. Это обеспечивает среду выполнения для сервисов. |
доступность | Жесткий - веб-службы могут быть доступны только через HTTP | гибкий |
Формат файла / расширение | .asmx как расширение файла | .svc как расширение файла |
Сериализация | Пространство имен System.Xml.serialization используется для сериализации | Пространство имен System.Runtime.Serialization используется для сериализации |
Необработанные исключения | Возвращено клиенту как ошибки SOAP | Не возвращается клиентам как ошибки SOAP |
Разработка клиента | Сделано с помощью инструмента командной строки WSDL.EXE | Сделано с использованием ServiceMetadatatool |
кодирование | XML1.0, MTOM (механизм оптимизации передачи сообщений), DIME (прямая инкапсуляция сообщений в Интернете) | XML1.0, MTOM, Binary |
Развитие Сервиса | Обязательно было добавить атрибут WebService к классу и атрибут WebMethodAttribute к любому из методов этого класса, которые должны быть операциями службы. | Конечные точки должны быть определены (одна или несколько) |
Представление сообщения | Можно настроить заголовки сообщений SOAP. | Атрибуты MessageContractAttribute, MessageHeaderAttribute и MessageBodyMemberAttribute предоставлены для объяснения структуры сообщений SOAP. |