2010-12-10 6 views

Antwort

10

Wie es aufgeführt ist here, wählen wsHttpBinding oder NetTcpBinding.WSHttpBinding Bindung.

+0

ich die Lösung verwendet, aber das Problem weg ging nicht und dann fand ich noch eine Sache [hier] zu tun (http: //stackoverflow.com/questions/4930403/basic-http-binding-isnt-configured-properly) also vergiss nicht, dieses zu deiner Konfiguration hinzuzufügen ... – Mochi

9

Diese Fehlermeldung ist selten klar. Hier die Antwort geht so, basichttbbinding unterstützt keine Sitzung. Sie müssen also die folgende Eigenschaft verwenden, wenn Sie sie verwenden möchten. [Service (Session = SessionMode.Allowed)]

Das bedeutet, wenn Sie mehrere Bindungen wie basichttp, wshttp, net.tcp zu konfigurieren versuchen, WCF automatisch Sitzung für andere als basichttp Bindung ermöglichen. Wenn Sie also SessionMode.Required anstelle von Allowed angeben, müssen Sie das Basichtpbinding nicht verwenden.

Das heißt, dieses Problem zu lösen, würde in der Regel so etwas wie dies erfordern:

<system.serviceModel> 
    <protocolMapping> 
     <add scheme="http" binding="wsHttpBinding" bindingConfiguration="wsHttpBindingConfiguration" /> 
    </protocolMapping> 
    <bindings> 
     <wsHttpBinding> 
     <binding name="wsHttpBindingConfiguration" transactionFlow="true" /> 
     </wsHttpBinding> 
     ....... 
Verwandte Themen