Mam usługa WCF spożywane przez klienta AJAX używając mydła 1,2Dlaczego InstanceContextMode.PerSession zachowuje się jak PerCall podczas korzystania z wsHttpBinding?
Web.config:
<endpoint address="" binding="wsHttpBinding"
contract="WcfService1.IService1" bindingConfiguration="wsHttpBin">
<wsHttpBinding>
<binding name="wsHttpBin">
<security mode="None"/>
</binding>
</wsHttpBinding>
Od czego mam read, muszę używać <security mode="None"/>
ponieważ usługa narażony na „wsHttpBinding” wiązania implementuje specyfikację usług WWW WS-Security z rodziny WS- *. Ponieważ powiązanie korzysta z zabezpieczeń, żądanie zostanie odrzucone, ponieważ AJAX nie obsługuje kontekstu zabezpieczeń.
Moje zachowanie jest zdefiniowana usługa WCF z InstanceContextMode.PerSession
:
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple,
InstanceContextMode = InstanceContextMode.PerSession)]
ale kiedy go spożywać, zachowują się jak PerCall serwis i każde wezwanie rozpoczyna nową instancję WCF zamiast przy użyciu bieżącej instancji.
Dlaczego InstanceContextMode.PerSession zachowuje się jak PerCall podczas używania wsHttpBinding?
Co mogę zrobić?
możliwy duplikat: http://stackoverflow.com/questions/4767102/wcf-sessions-with-a-wshttpbinding-and-without-windows-security – ErnieL
@Eniel Dzięki, ale używając nie jest dla mnie opcją, ponieważ nie będzie działać z moim klientem AJAX. –
Samo wsHttpBinding nie obsługuje sesji. – ErnieL