Freigeben über


Gewusst wie: Konfigurieren von WCF-Diensten in ASP.NET AJAX

Aktualisiert: November 2007

Mithilfe der Windows Communication Foundation (WCF) können Sie einen Dienst (.svc) erstellen, der über die ECMAScript (JavaScript)-Clientfunktionen aufgerufen werden kann, die in einer ASP.NET-AJAX-fähigen Webanwendung ausgeführt werden. Dieses Thema erläutert, wie Sie den Dienst so konfigurieren, dass Sie ihn aus dem Clientskript aufrufen können. Sie konfigurieren den Dienst im system.serviceModel-Element der Datei Web.config, bei der es sich um ein untergeordnetes Element des Konfigurationsabschnitts handelt.

Während der WCF-Dienstaufrufe wird das JSON-Format verwendet, um Daten zwischen Clientanwendung und Dienst auszutauschen.

So konfigurieren Sie WCF-Dienste, um Aufrufe aus dem Clientskript zu ermöglichen

  1. Öffnen Sie die Datei Web.config der Webanwendung.

  2. Setzen Sie aspNetCompatibilityEnabled für das serviceHostingEnvironment-Element auf true, wie im folgenden example gezeigt:

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
    
  3. Konfigurieren Sie den Messagingstapel, der auf die HTTP-Pipeline angewendet werden soll, wie im folgenden Beispiel:

    <bindings>
        <webHttpBinding>
           <binding name="default"/>
        </webHttpBinding>
    </bindings>
    
  4. Konfigurieren Sie das behavior-Element für die Endpunkte und Dienste, indem Sie die Elemente endpointBehaviors und serviceBehaviors definieren, die im behaviors-Element enthalten sind.

    Das behavior-Element für das endpointBehaviors-Element muss konfiguriert werden, damit die Webskripterstellung aktiviert ist. Das behavior-Element für das serviceBehaviors-Element muss so konfiguriert werden, dass die Dienstmetadaten für den Abruf per HTTP-GET-Anforderung veröffentlicht werden.

    Das folgende Beispiel zeigt, wie Sie die Elemente behavior und endPointBehavior konfigurieren.

    <behaviors>
      <endpointBehaviors>
        <behavior name="webScriptEnablingBehavior">
          <enableWebScript/>
        </behavior>
      </endpointBehaviors>
    
      <serviceBehaviors>
        <behavior name="MyServiceTypeBehaviors">
          <serviceMetadata httpGetEnabled="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    
  5. Konfigurieren Sie einen Endpunkt für das service-Element, dessen Attributwerte webHttpBinding und behavioConfiguration in den vorherigen Schritten definiert wurden.

    Das folgende Beispiel zeigt, wie Sie das service-Element konfigurieren.

    <services>
      <service name="Samples.Aspnet.SimpleService"
         behaviorConfiguration="MyServiceTypeBehaviors">
         <endpoint address="" binding="webHttpBinding"
           bindingConfiguration="default"
           contract="Samples.Aspnet.ISimpleService"
           behaviorConfiguration="webScriptEnablingBehavior"/>
      </service>
    </services>
    

Siehe auch

Konzepte

Offenlegen von WCF-Diensten für Clientskript

Weitere Ressourcen

<system.serviceModel>

Erstellen von WCF-Diensten für ASP.NET AJAX

Gewusst wie: Verwenden der Konfiguration zum Hinzufügen eines ASP.NET AJAX-Endpunkts

Unterstützung für JSON und andere Datenübertragungsformate