SoapDocumentMethodAttribute.OneWay Propriedade

Definição

Obtém ou define se um cliente de serviço Web XML espera que o servidor Web termine de processar um método de serviço 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 Propriedade

true se o cliente de serviço Web XML não esperar que o servidor Web processe completamente um método de serviço Web XML. O valor predefinido é false.

Exemplos

O seguinte exemplo de código é um método de serviço Web XML que não exige que o cliente espere que o método do serviço Web XML seja concluído. Portanto, a amostra define a OneWay propriedade para true.

<%@ WebService Language="C#" Class="Stats" %>
 
 using System.Web.Services;
 using System.Web.Services.Protocols;
 
 public class Stats: WebService {
 
      [ SoapDocumentMethod(OneWay=true) ]
      [ WebMethod(Description="Starts nightly statistics batch process.") ]
      public void StartStatsCrunch() {
         // Begin nightly statistics crunching process.
         // A one-way method cannot have return values.
      }      
 
 }
<%@ WebService Language="VB" Class="Stats" %>
 
Imports System.Web.Services
Imports System.Web.Services.Protocols

Public Class Stats
    Inherits WebService
        
    <SoapDocumentMethod(OneWay := True), _
    WebMethod(Description := "Starts nightly statistics batch process.")> _
    Public Sub _
        StartStatsCrunch()
        
        ' Begin nightly statistics crunching process.
        ' A one-way method cannot have return values.
    End Sub
End Class

Observações

Quando um método de serviço Web XML tem a OneWay propriedade definida para true, o cliente de serviço Web XML não tem de esperar que o servidor Web termine de processar o método do serviço Web XML. Assim que o servidor Web desserializa o SoapServerMessage, mas antes de invocar o método do serviço Web XML, o servidor devolve um código de estado HTTP 202. Um código de estado HTTP 202 indica ao cliente que o servidor Web começou a processar a mensagem. Portanto, um cliente de serviço Web XML não recebe qualquer confirmação de que o servidor Web processou com sucesso a mensagem.

Métodos unidirecionais não podem ter um valor de retorno nem quaisquer parâmetros de saída.

Se estiver a usar os métodos de serviço Web XML do .NET Framework versão 1.0 que tenham o atributo SoapRpcMethodAttribute ou SoapDocumentMethodAttribute aplicado com a propriedade OneWay definido para true, não tenha acesso ao seu HttpContext usando a propriedade estática Current. Para aceder ao HttpContext, derive a classe que implementa o método do serviço Web XML a partir de WebService e aceda à Context propriedade.

Aplica-se a

Ver também