Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett begärandesvarskontrakt anger en metod som returnerar ett svar. Svaret måste skickas och korreleras med begäran enligt villkoren i detta avtal. Även om metoden inte returnerar något svar (void i C# eller i Sub Visual Basic) skapar och skickar infrastrukturen ett tomt meddelande till anroparen. Om du vill förhindra att ett tomt svarsmeddelande skickas använder du ett enkelriktade kontrakt för åtgärden.
Så här skapar du ett begärandesvarskontrakt
Skapa ett gränssnitt i valfritt programmeringsspråk.
ServiceContractAttribute Använd attributet för gränssnittet.
OperationContractAttribute Använd attributet för varje metod som klienter kan anropa.
Valfritt. Ange värdet för IsOneWay egenskapen till för
trueatt förhindra att ett tomt svarsmeddelande skickas. Som standard är alla åtgärder kontrakt för begärandesvar.
Exempel
Följande exempel definierar ett kontrakt för en kalkylatortjänst som tillhandahåller Add och Subtract metoder. Metoden Multiply är inte en del av kontraktet eftersom den inte är markerad av OperationContractAttribute klassen och därför inte är tillgänglig för klienter.
using System.ServiceModel;
[ServiceContract]
public interface ICalculator
{
[OperationContract]
// It would be equivalent to write explicitly:
// [OperationContract(IsOneWay=false)]
int Add(int a, int b);
[OperationContract]
int Subtract(int a, int b);
int Multiply(int a, int b)
}
Mer information om hur du anger åtgärdskontrakt finns i OperationContractAttribute klassen och egenskapen IsOneWay .
Om attributen ServiceContractAttribute och OperationContractAttribute tillämpas genereras automatiskt definitioner av tjänstkontrakt i ett WSDL-dokument (Web Services Description Language) när tjänsten har distribuerats. Dokumentet laddas ned genom att lägga
?wsdltill http-basadressen för tjänsten. Till exempel:http://microsoft/CalculatorService?wsdl