OperationContractAttribute.IsOneWay Property
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Gets or sets a value that indicates whether an operation returns a reply message.
Assembly: System.ServiceModel (in System.ServiceModel.dll)
Property Value
Type: System.Booleantrue if an operation does not return a reply message, false if it does.
Use the IsOneWay property to indicate that an operation does not return a reply message. This type of operation is useful for notifications or event-style communication, especially in two-way communication. Without waiting for an underlying response message, callers of one-way operations have no direct way to detect a failure in processing the request message.
If the IsOneWay property is set to false (the default), even methods that return void result in a reply message. In this case, the infrastructure creates and sends an empty message to indicate to the caller that the method has returned. (Using this approach enables the infrastructure to send SOAP faults back to the client.) Setting IsOneWay to true is the only way to cancel the creation and dispatch of a response message.
One-way methods must not return a value or have ref or out parameters; otherwise, an InvalidOperationException exception is thrown.
// A service contract defined with a class // for different response patterns. [ServiceContract( Name = "SampleServiceContract3", Namespace = "http://microsoft.wp.documentation")] public class OneAndTwoWay { // The client waits until a response message appears. [OperationContract] public int MethodOne(int x, out int y) { y = 34; return 0; } // The client waits until an empty response message appears. [OperationContract] public void MethodTwo(int x) { return; } // The client returns as soon as an outbound message // is queued for dispatch to the service; no response // message is generated or sent. [OperationContract(IsOneWay = true)] public void MethodThree(int x) { return; } }