SoapDocumentMethodAttribute.OneWay Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft ab oder legt fest, ob ein XML-Webdienstclient wartet, bis der Webserver die Verarbeitung einer XML-Webdienstmethode abgeschlossen hat.
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
Eigenschaftswert
true wenn der XML-Webdienstclient nicht wartet, bis der Webserver eine XML-Webdienstmethode vollständig verarbeitet. Der Standardwert ist false.
Beispiele
Das folgende Codebeispiel ist eine XML-Webdienstmethode, die nicht erfordert, dass der Client auf den Abschluss der XML-Webdienstmethode wartet. Daher legt das Beispiel die OneWay Eigenschaft auf 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
Hinweise
Wenn eine XML-Webdienstmethode den OneWay Eigenschaftensatz aufweist true, muss der XML-Webdienstclient nicht warten, bis der Webserver die Verarbeitung der XML-Webdienstmethode abgeschlossen hat. Sobald der Webserver die Deserialisierung deserialisiert SoapServerMessagehat, aber vor dem Aufrufen der XML-Webdienstmethode gibt der Server einen HTTP 202-Statuscode zurück. Ein HTTP 202-Statuscode gibt dem Client an, dass der Webserver mit der Verarbeitung der Nachricht begonnen hat. Daher erhält ein XML-Webdienstclient keine Bestätigung, dass der Webserver die Nachricht erfolgreich verarbeitet hat.
Unidirektionale Methoden können keinen Rückgabewert oder ausgabeparameter aufweisen.
Wenn Sie die .NET Framework- Version 1.0-XML-Webdienstmethoden verwenden, auf die entweder die SoapRpcMethodAttribute Eigenschaft oder SoapDocumentMethodAttribute das Attribut angewendet wurde, auf truedie OneWay sie festgelegt ist, haben Sie keinen Zugriff auf die HttpContext Verwendung der statischen Current Eigenschaft. Um auf die HttpContextKlasse zuzugreifen, die die XML-Webdienstmethode WebService implementiert, und greifen Sie auf die Context Eigenschaft zu.