В чем разница между wsHttpBinding и ws2007HttpBinding? - PullRequest
15 голосов
/ 27 февраля 2009

На MSDN мы можем прочитать:

Класс WS2007HttpBinding добавляет системную привязку, аналогичную WSHttpBinding, но использует стандартные версии Организации по усовершенствованию стандартов структурированной информации (OASIS) протоколов ReliableSession, Security и TransactionFlow. При использовании этой привязки никаких изменений в объектной модели или настройках по умолчанию не требуется.

Но я не могу найти никакой документации, которая могла бы объяснить, почему я хотел бы переместить wsHttpBinding на ws2007HttpBinding, мне кажется, что стандарт один и тот же.

Может кто-нибудь дать мне хорошее объяснение?

Ответы [ 4 ]

7 голосов
/ 27 февраля 2009

Привязки поддерживают разные протоколы. Эта страница на MSDN на самом деле имеет красивую матрицу, которая объясняет, какие протоколы поддерживаются какими привязками в WCF. Поэтому, если вам нужно взаимодействие со службами / клиентами, которые реализуют протоколы OASIS, используйте привязку ws2007httpbinding, в противном случае нет причин не использовать привязку wshttpbinding.

Если вы хотите получить подробную информацию о различных протоколах, посетите их веб-сайты: WC3 и OASIS . Я уверен, что есть тонны ресурсов, которые подчеркивают различия в этих протоколах.

Различные крупные предприятия и правительства должны использовать веб-сервисы и предъявлять различные требования. Таким образом, разные стандарты имеют смысл.

3 голосов
/ 05 июня 2011

Из книги OReilly "Программирование служб WCF" (стр. 28-29) говорится, что Ws2007HttpBinding является производным от WsHttpBinding. Добавлена ​​поддержка новых стандартов и обновлений для транзакций, стандартов безопасности и надежности.

2 голосов
/ 27 февраля 2009

ws2007HttpBinding, определенный OASIS, является более новой версией, чем wsHttpBinding.

Добавлены протоколы ReliableSession, Security и TransactionFlow поверх транзакций, надежного обмена сообщениями и протоколов WS-адресации wsHttpBinding.

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

2 голосов
/ 27 февраля 2009

Использование последних стандартов звучит как хорошая практика, но имейте в виду, что WS2007HttpBinding поддерживается только клиентами, работающими по крайней мере .NET версии 3.5 SP1 или 3.0 SP1.

...