私はSOAP 1.2wsHttpBindingを使用するとInstanceContextMode.PerSessionがPerCallのように動作するのはなぜですか?
のWeb.config使用してAJAXクライアントによって消費WCFサービスがあります。私はread持っているものから
<endpoint address="" binding="wsHttpBinding"
contract="WcfService1.IService1" bindingConfiguration="wsHttpBin">
<wsHttpBinding>
<binding name="wsHttpBin">
<security mode="None"/>
</binding>
</wsHttpBinding>
を、私は結合「wsHttpBinding」で公開されたサービス以来<security mode="None"/>
を使用する必要がありますWebサービス仕様のWS- *ファミリのWS-Securityを実装しています。バインディングはセキュリティを使用するため、AJAXはセキュリティコンテキストをサポートしていないため、要求は拒否されます。
私のWCFサービスの動作はInstanceContextMode.PerSession
で定義されます。
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple,
InstanceContextMode = InstanceContextMode.PerSession)]
が、私はそれを消費するとき、PerCallおよびすべてのコールなどのサービス振る舞いではなく、現在のインスタンスを使用しての新しいWCFのインスタンスを起動します。
wsHttpBindingを使用するとInstanceContextMode.PerSessionがPerCallのように動作するのはなぜですか?
どうすればよいですか?
可能な複製:http://stackoverflow.com/questions/4767102/wcf-sessions-with-a-wshttpbinding-and-without-windows-security – ErnieL
@ErnieLありがとうございますが、 自分のAJAXクライアントでは動作しないので、私にとってはオプションではありません。 –
それ自体では、wsHttpBindingはセッションをサポートしていません。 – ErnieL