Procedura: aggiungere un endpoint ASP.NET AJAX con l'uso della configurazioneHow to: Use Configuration to Add an ASP.NET AJAX Endpoint

Windows Communication Foundation (WCF) consente di creare un servizio che rende un endpoint disponibile che può essere chiamato da JavaScript su un sito Web client ASP.NET per AJAX.Windows Communication Foundation (WCF) allows you to create a service that makes an ASP.NET AJAX-enabled endpoint available that can be called from JavaScript on a client Web site. Per creare tale endpoint, è possibile utilizzare un file di configurazione, come con tutti gli altri endpoint di Windows Communication Foundation (WCF) o usare un metodo che non richiede elementi di configurazione.To create such an endpoint, you can either use a configuration file, as with all other Windows Communication Foundation (WCF) endpoints, or use a method that does not require any configuration elements. In questo argomento viene illustrato l'approccio tramite configurazione.This topic demonstrates the configuration approach.

La parte della procedura che consente all'endpoint di servizio diventi ASP.NET per AJAX consiste nel configurare l'endpoint utilizzerà il WebHttpBinding e aggiungere il <enableWebScript > il comportamento dell'endpoint.The part of the procedure that enables the service endpoint to become ASP.NET AJAX-enabled consists of configuring the endpoint to use the WebHttpBinding and to add the <enableWebScript> endpoint behavior. Dopo aver configurato l'endpoint, i passaggi per implementare e ospitare il servizio sono simili a quelli utilizzati da qualsiasi servizio WCF.After configuring the endpoint, the steps to implement and host the service are similar to those used by any WCF service. Per un esempio funzionante, vedere il servizio AJAX con HTTP POST.For a working example, see the AJAX Service Using HTTP POST.

Per ulteriori informazioni su come configurare un endpoint ASP.NET AJAX senza configurazione, vedere procedura: aggiungere ASP.NET AJAX senza utilizzando configurazione dell'Endpoint.For more information about how to configure an ASP.NET AJAX endpoint without using configuration, see How to: Add an ASP.NET AJAX Endpoint Without Using Configuration.

Per creare un servizio WFC di baseTo create a basic WCF service

  1. Definire un contratto di servizio WCF base con un'interfaccia contrassegnata con il ServiceContractAttribute attributo.Define a basic WCF service contract with an interface marked with the ServiceContractAttribute attribute. Contrassegnare ogni operazione con OperationContractAttribute.Mark each operation with the OperationContractAttribute. Assicurarsi di impostare la proprietà Namespace.Be sure to set the Namespace property.

    [ServiceContract(Namespace = "MyService")]  
    public interface ICalculator  
    {  
        [OperationContract]  
         // This operation returns the sum of d1 and d2.  
        double Add(double n1, double n2);  
    
        //Other operations omitted…  
    
    }  
    
  2. Implementare il contratto di servizio ICalculator con CalculatorService.Implement the ICalculator service contract with a CalculatorService.

    public class CalculatorService : ICalculator  
    {  
        public double Add(double n1, double n2)  
        {  
            return n1 + n2;  
        }  
    
    //Other operations omitted…  
    
  3. Definire uno spazio dei nomi per le implementazioni ICalculator e CalculatorService eseguendo il wrapping di queste ultime in un blocco dello spazio dei nomi.Define a namespace for the ICalculator and CalculatorService implementations by wrapping them in a namespace block.

    Namespace Microsoft.Ajax.Samples  
    {  
        //Include the code for ICalculator and Caculator here.  
    }  
    

Per creare endpoint ASP.NET AJAX per il servizio.To create an ASP.NET AJAX endpoint for the service

  1. Creare una configurazione di comportamento e specificare il <enableWebScript > comportamento per ASP.NET per AJAX gli endpoint del servizio.Create a behavior configuration and specify the <enableWebScript> behavior for ASP.NET AJAX-enabled endpoints of the service.

    <system.serviceModel>  
        <behaviors>  
            <endpointBehaviors>  
                <behavior name="AspNetAjaxBehavior">  
                    <enableWebScript />  
                </behavior>  
            </endpointBehaviors>  
        </behaviors>  
    </system.serviceModel>  
    
  2. Creare un endpoint per il servizio che utilizza WebHttpBinding e il comportamento ASP.NET AJAX definito nel passaggio precedente.Create an endpoint for the service that uses the WebHttpBinding and the ASP.NET AJAX behavior defined in the previous step.

    <system.serviceModel>  
        <services>  
            <service name="Microsoft.Ajax.Samples.CalculatorService">  
                <endpoint address=""  
                    behaviorConfiguration="AspNetAjaxBehavior"   
                    binding="webHttpBinding"  
                    contract="Microsoft.Ajax.Samples.ICalculator" />  
            </service>  
        </services>  
    </system.serviceModel>   
    

Per ospitare il servizio in IISTo host the service in IIS

  1. Per ospitare il servizio in IIS, creare nell'applicazione un nuovo file denominato "service" con estensione svc.To host the service in IIS, create a new file named service with a .svc extension in the application. Modificare il file aggiungendo appropriata @ServiceHost informazioni direttive per il servizio.Edit this file by adding the appropriate @ServiceHost directive information for the service. Ad esempio, il file del servizio per l'esempio CalculatorService contiene le informazioni seguenti:For example, the content in the service file for the CalculatorService sample contains the following information.

    <%@ServiceHost   
    language=c#   
    Debug="true"   
    Service="Microsoft.Ajax.Samples.CalculatorService"  
    %>  
    
  2. Per ulteriori informazioni sull'hosting in IIS, vedere procedura: ospitare un servizio WCF in IIS.For more information about hosting in IIS, see How to: Host a WCF Service in IIS.

Per chiamare il servizioTo call the service

  1. L'endpoint è configurato in un indirizzo vuoto relativo al file con estensione svc, pertanto il servizio è ora disponibile e può essere richiamato inviando richieste a Service.svc /<operazione >, ad esempio, Service.svc/Add per il Add operazione.The endpoint is configured at an empty address relative to the .svc file, so the service is now available and can be invoked by sending requests to service.svc/<operation> - for example, service.svc/Add for the Add operation. È possibile utilizzarlo immettendo l'URL dell'endpoint nella raccolta degli script del controllo Script Manager ASP.NET AJAX.You can use it by entering the endpoint URL into the Scripts collection of the ASP.NET AJAX Script Manager control. Per un esempio, vedere il servizio AJAX con HTTP POST.For an example, see the AJAX Service Using HTTP POST.

Vedere ancheSee Also

Creazione di servizi WCF per ASP.NET AJAXCreating WCF Services for ASP.NET AJAX
Procedura: Eseguire la migrazione di servizi Web ASP.NET abilitati AJAX in WCFHow to: Migrate AJAX-Enabled ASP.NET Web Services to WCF