У меня есть службы WCF, потребляемый AJAX клиента с использованием SOAP 1.2Почему InstanceContextMode.PerSession ведет себя как PerCall при использовании wsHttpBinding?
Web.config:
<endpoint address="" binding="wsHttpBinding"
contract="WcfService1.IService1" bindingConfiguration="wsHttpBin">
<wsHttpBinding>
<binding name="wsHttpBin">
<security mode="None"/>
</binding>
</wsHttpBinding>
Из того, что у меня есть read, я должен использовать <security mode="None"/>
, так как сервис подвергается с «WsHttpBinding» связывания реализует WS-Security WS- * семейства спецификаций веб-сервисов. Поскольку привязка использует безопасность, запрос будет отклонен, поскольку AJAX не поддерживает контекст безопасности.
Мое поведение службы WCF определяется с InstanceContextMode.PerSession
:
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple,
InstanceContextMode = InstanceContextMode.PerSession)]
но когда я потребляю его, служба ведут себя, как PerCall и каждый вызов запускает новый экземпляр WCF вместо использования текущего экземпляра.
Почему InstanceContextMode.PerSession ведет себя как PerCall при использовании wsHttpBinding?
Что я могу сделать?
Возможный дубликат: http://stackoverflow.com/questions/4767102/wcf-sessions-with-a-wshttpbinding-and-without-windows-security – ErnieL
@ErnieL Спасибо, но используя для меня это не вариант, поскольку он не будет работать с моим клиентом AJAX. –
Сам по себе wsHttpBinding не поддерживает сеансы. – ErnieL