Gör så här: Använda konfiguration för att lägga till en ASP.NET AJAX-slutpunkt
Med Windows Communication Foundation (WCF) kan du skapa en tjänst som gör en ASP.NET AJAX-aktiverad slutpunkt tillgänglig som kan anropas från JavaScript på en klientwebbplats. Om du vill skapa en sådan slutpunkt kan du antingen använda en konfigurationsfil, som med alla andra WCF-slutpunkter (Windows Communication Foundation), eller använda en metod som inte kräver några konfigurationselement. Det här avsnittet visar konfigurationsmetoden.
Den del av proceduren som gör det möjligt för tjänstslutpunkten att bli ASP.NET AJAX-aktiverad består av att konfigurera slutpunkten för att använda WebHttpBinding och lägga <till enableWebScript-slutpunktsbeteendet> . När du har konfigurerat slutpunkten liknar stegen för att implementera och vara värd för tjänsten de som används av alla WCF-tjänster. Ett fungerande exempel finns i AJAX-tjänsten med HTTP POST.
Mer information om hur du konfigurerar en ASP.NET AJAX-slutpunkt utan konfiguration finns i Så här lägger du till en ASP.NET AJAX-slutpunkt utan att använda konfiguration.
Skapa en grundläggande WCF-tjänst
Definiera ett grundläggande WCF-tjänstkontrakt med ett gränssnitt markerat med attributet ServiceContractAttribute . Markera varje åtgärd med OperationContractAttribute. Se till att ange egenskapen Namespace .
[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… }
Implementera tjänstkontraktet
ICalculator
med enCalculatorService
.public class CalculatorService : ICalculator { public double Add(double n1, double n2) { return n1 + n2; } // Other operations omitted… }
Definiera ett namnområde för implementeringarna
ICalculator
ochCalculatorService
genom att omsluta dem i ett namnområdesblock.namespace Microsoft.Ajax.Samples { //Include the code for ICalculator and Calculator here. }
Skapa en ASP.NET AJAX-slutpunkt för tjänsten
Skapa en beteendekonfiguration och ange <enableWebScript-beteendet> för ASP.NET AJAX-aktiverade slutpunkter för tjänsten.
<system.serviceModel> <behaviors> <endpointBehaviors> <behavior name="AspNetAjaxBehavior"> <enableWebScript /> </behavior> </endpointBehaviors> </behaviors> </system.serviceModel>
Skapa en slutpunkt för tjänsten som använder WebHttpBinding och det ASP.NET AJAX-beteende som definierades i föregående steg.
<system.serviceModel> <services> <service name="Microsoft.Ajax.Samples.CalculatorService"> <endpoint address="" behaviorConfiguration="AspNetAjaxBehavior" binding="webHttpBinding" contract="Microsoft.Ajax.Samples.ICalculator" /> </service> </services> </system.serviceModel>
Värd för tjänsten i IIS
Om du vill vara värd för tjänsten i IIS skapar du en ny fil med namnet service med tillägget .svc i programmet. Redigera den här filen genom att lägga till lämplig information om @ServiceHost direktiv för tjänsten. Till exempel innehåller innehållet i tjänstfilen för
CalculatorService
exemplet följande information.<%@ServiceHost language=c# Debug="true" Service="Microsoft.Ajax.Samples.CalculatorService" %>
Mer information om värdtjänster i IIS finns i Så här: Värd för en WCF-tjänst i IIS.
Så här anropar du tjänsten
- Slutpunkten konfigureras på en tom adress i förhållande till .svc-filen, så tjänsten är nu tillgänglig och kan anropas genom att skicka begäranden till service.svc/<operation> , till exempel service.svc/Add för
Add
åtgärden. Du kan använda den genom att ange slutpunkts-URL:en i skriptsamlingen för kontrollen ASP.NET AJAX Script Manager. Ett exempel finns i AJAX-tjänsten med HTTP POST.