Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un contratto request-reply specifica un metodo che restituisce una risposta. La risposta deve essere inviata e correlata alla richiesta in base alle condizioni del presente contratto. Anche se il metodo non restituisce alcuna risposta (void in C# o in Sub Visual Basic), l'infrastruttura crea e invia un messaggio vuoto al chiamante. Per impedire l'invio di un messaggio di risposta vuoto, usare un contratto unidirezionale per l'operazione.
Per creare un contratto di richiesta-risposta
Creare un'interfaccia nel linguaggio di programmazione preferito.
Applicare l'attributo ServiceContractAttribute all'interfaccia .
Applicare l'attributo OperationContractAttribute a ogni metodo che i client possono richiamare.
Optional. Impostare il valore della IsOneWay proprietà su
trueper impedire l'invio di un messaggio di risposta vuoto. Per impostazione predefinita, tutte le operazioni sono contratti di richiesta-risposta.
Esempio
L'esempio seguente definisce un contratto per un servizio calcolatrice che fornisce i metodi Add e Subtract. Il Multiply metodo non fa parte del contratto perché non è contrassegnato dalla OperationContractAttribute classe e pertanto non è accessibile ai client.
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)
}
Per altre informazioni su come specificare i contratti di operazione, vedere la OperationContractAttribute classe e la IsOneWay proprietà .
L'applicazione degli ServiceContractAttribute attributi e OperationContractAttribute determina la generazione automatica delle definizioni del contratto di servizio in un documento WSDL (Web Services Description Language) dopo la distribuzione del servizio. Il documento viene scaricato aggiungendo
?wsdlall'indirizzo di base HTTP per il servizio. Ad esempio,http://microsoft/CalculatorService?wsdl