WCF с использованием REST, с некоторыми обязательными вопросами - PullRequest
2 голосов
/ 06 мая 2010

Я сейчас очень запутался, и нигде не могу найти правильных ответов.

Мои заблуждения:

1) Разве wsHttpBinging (который усилен basicHttpBinding) не используется в SOAP вместо REST, а REST использует только webHttpBinding?

2) Кроме того, поддерживает ли silverlight 4 с WCF (REST) ​​поддержку wsHttpBinding (VS2010)? Я читал, что это не везде в сети, но я кое-как получил Silverlight 4, работающий с REST, используя wsHttpBinding. ПРИМЕЧАНИЕ. Я использую Factory = "System.ServiceModel.Activation.WebServiceHostFactory". Эта заводская настройка как-то обходит мои настройки web.config для wsHttpBinding, чтобы она работала с webHttpBinding, и я думаю, что мой wsHttpBinding работает?

Спасибо.

1 Ответ

2 голосов
/ 06 мая 2010

WCF по умолчанию использует SOAP - все привязки, кроме webHttpBinding, используют SOAP.

Если вы хотите сделать REST, вам нужно использовать webHttpBinding.

1) Это не wsHttpBinging (который усиленный basicHttpBinding) используется в SOAP вместо REST и только REST использует webHttpBinding?

Да - wsHttpBinding - это протокол на основе SOAP - webHttpBinding - это REST

2) Кроме того, делает Silverlight 4 с WCF (REST) ​​поддержка wsHttpBinding (VS2010)?

Silverlight 4 поддерживает basicHttpBinding (SOAP), netTcpBinding (новое в SL4 - SOAP) и webHttpBinding (REST).

ПРИМЕЧАНИЕ: я использую Завод = "System.ServiceModel.Activation.WebServiceHostFactory". Это заводская установка как-то в обход моей настройки web.config для wsHttpBinding, чтобы заставить его работать с webHttpBinding и я думаю, мой wsHttpBinding работает?

Да, если вы используете WebServiceHostFactory в своем SVC-файле, то вы действительно получаете webHttpBinding (REST) ​​неявно. Среда выполнения WCF не будет смотреть на ваш web.config для информации - он содержит всю информацию и настройки, необходимые для использования WebServiceHostFactory - и вы получаете webHttpBinding.

...