Вопрос по c#, .net, php, java, wcf – Различные привязки WCF, их различия и совместимость с другими платформами

19

Я ищу хорошие технические детали по теме привязок WCF, мне интересно знать следующие вещи.

List of Different WCF Bindings with its special purpose and limitation. Compatibility/Interoperability with other platform like consuming WCF service in Java, PHP client. Which binding is supported and which is not. If I want to get/post secure data through service API which binding should I use if client application is in Java or Php ?

Я просматривал различные материалы через Интернет, но они не детализированы и несколько разбросаны. Жду хороших ответов.

Я добавил еще один вопрос, чтобы получить больше разъяснений. Дело в том, что я должен создать сервисный API, через который разные клиенты могут взаимодействовать с моим приложением для ввода данных, обработки данных. Пожалуйста, свяжите вопрос с этим сценарием и предоставьте ответ. MSUH

Ваш Ответ

3   ответа
64

Выбор правильной привязки WCF

enter image description here

BasicHttpBinding: Basic web service communication. Exposes WCF services as legacy ASMX web services. Used for interoperability. No security by default. WSHttpBinding: Web services with WS-* support. Supports transactions and reliable messaging. WSDualHttpBinding: Web services with duplex contract and transaction support. WSFederationHttpBinding: Web services with federated security. Supports transactions. MsmqIntegrationBinding: Communication directly with MSMQ applications. Supports transactions. NetMsmqBinding: Communication between WCF applications by using queuing. Supports transactions. NetNamedPipeBinding: Communication between WCF applications on same computer. Supports duplex contracts and transactions. NetPeerTcpBinding: Communication between computers across peer-to-peer services. Supports duplex contracts. NetTcpBinding: Communication between WCF applications across computers. Supports duplex contracts and transactions.
Что означает WCF для WCF?
@PranayRana, однако, вы могли указать, что NetTcpBinding работает только с .NET на обоих концах канала. Привязки MSMQ расположены посередине (в основном), а привязки Basic и WS обычно используются для взаимодействия с другими средами. Я согласен, что графикeffectively делает это
+1 за добавление графика, до этого вы рассматривали только половину вопроса.
@JoshuaDrake - в основном для других технологий, таких как php, jsp, который работает в веб-домене, лучше использовать протокол BasicHttpBinding, который легко можно определить из диаграммы ... который может ответить на оба вопроса ... лучше пойти и прочитать о каждом протокол, потому что каждый имеет описание 1 или 1/2 страницы, которые я не могу включить сюда
Спасибо, но я уже прошел эту статью до публикации здесь. Меня интересуют сценарии / ситуации, когда одна привязка применима, а другая нет, а другой вопрос - могу ли я использовать все службы с клиентом Java или php? MSUH
2

If you are required to create a binding that is globally inter-operable, use http binding.

For internal use, but consumers are in separate servers use tcp binding. It less inter-operable, but using binary encoding which is faster.

Use named pipe binding for intra-server communication, that is for consumers hosted in same servers. Named pipe binding is the fastest one in wcf allowed bindings.

Используйте привязки правильно, сделайте ваш проект лучше.

4

Добавить к принятому ответу, если вы хотите связать свойJSON запрос к объекту в WCF, используйтеwebHttpBinding

Здесь & APOS; s пример по этому.

Похожие вопросы