SoapRpcMethodAttribute.OneWay Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece si un cliente de servicio web XML espera a que el servidor web termine de procesar un método de servicio web XML.
public:
property bool OneWay { bool get(); void set(bool value); };
public bool OneWay { get; set; }
member this.OneWay : bool with get, set
Public Property OneWay As Boolean
Valor de propiedad
true si el cliente del servicio web XML no espera a que el servidor web procese completamente un método de servicio web XML; de lo contrario, false. El valor predeterminado es false.
Ejemplos
En el ejemplo de código siguiente se establece la OneWay propiedad trueen .
<%@ WebService Language="C#" Class="Stats" %>
using System.Web.Services;
using System.Web.Services.Protocols;
public class Stats: WebService {
[ SoapRpcMethod(OneWay=true) ]
[ WebMethod(Description="Starts nightly stats batch process.") ]
public void StartStatsCrunch() {
// Begin a process that takes a long time to complete.
}
}
<%@ WebService Language="VB" Class="Stats" %>
Imports System.Web.Services
Imports System.Web.Services.Protocols
Public Class Stats
Inherits WebService
<SoapRpcMethod(OneWay := True), _
WebMethod(Description := "Starts nightly stats batch process.")> _
Public Sub _
StartStatsCrunch()
' Begin a process that takes a long time to complete.
End Sub
End Class
Comentarios
Cuando un método de servicio web XML tiene la OneWay propiedad establecida trueen , el cliente del servicio web XML no tiene que esperar a que el servidor web termine de procesar el método de servicio web XML. Tan pronto como el servidor web ha deserializado , SoapServerMessagepero antes de invocar el método de servicio web XML, el servidor devuelve un código de estado HTTP 202. Un código de estado HTTP 202 indica al cliente que el servidor web ha empezado a procesar el mensaje. Por lo tanto, un cliente de servicio web XML no recibe ninguna confirmación de que el servidor web procesó correctamente el mensaje.
Los métodos unidireccionales no pueden tener un valor devuelto ni ningún out parámetro.
Si usa los métodos de servicio web XML de .NET Framework versión 1.0 que tienen el atributo o SoapDocumentMethodAttribute aplicado a ellos con la OneWay propiedad establecida trueen , no permita el acceso a su HttpContext mediante la propiedad estáticaCurrent.SoapRpcMethodAttribute Para acceder a HttpContext, derive la clase que implementa el método de servicio web XML desde WebService y acceda a la Context propiedad .