Udostępnij za pośrednictwem


SoapRpcMethodAttribute.OneWay Właściwość

Definicja

Pobiera lub ustawia, czy klient usługi sieci Web XML czeka na zakończenie przetwarzania metody usługi sieci 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

Wartość właściwości

true jeśli klient usługi sieci Web XML nie czeka na całkowite przetworzenie metody usługi sieci Web XML; w przeciwnym razie , false. Wartość domyślna to false.

Przykłady

Poniższy przykład kodu ustawia OneWay właściwość na truewartość .

<%@ 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

Uwagi

Gdy metoda usługi sieci Web XML ma właściwość ustawioną OneWay na true, klient usługi sieci Web XML nie musi czekać na zakończenie przetwarzania metody usługi sieci Web XML. Gdy serwer sieci Web wykona deserializacji SoapServerMessage, ale przed wywołaniem metody usługi sieci Web XML serwer zwraca kod stanu HTTP 202. Kod stanu HTTP 202 wskazuje klientowi, że serwer sieci Web rozpoczął przetwarzanie komunikatu. W związku z tym klient usługi sieci Web XML nie otrzymuje potwierdzenia, że serwer sieci Web pomyślnie przetworzył komunikat.

Metody jednokierunkowe nie mogą mieć wartości zwracanej ani żadnych out parametrów.

Jeśli używasz metod usługi sieci Web XML w wersji .NET Framework w wersji 1.0, które mają SoapRpcMethodAttribute zastosowany atrybut lub SoapDocumentMethodAttribute z właściwością OneWay ustawioną na truewartość , nie zezwalaj na dostęp do nich HttpContext przy użyciu właściwości statycznejCurrent. Aby uzyskać dostęp do HttpContextklasy , należy utworzyć klasę implementowania metody usługi sieci Web XML z WebService klasy i uzyskać dostęp do Context właściwości .

Dotyczy