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 darauf wartet, dass der Webserver die Verarbeitung einer XML-Webdienstmethode beendet.
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 darauf wartet, dass der Webserver eine XML-Webdienstmethode vollständig verarbeitet. Der Standardwert ist false
.
Beispiele
Das folgende Codebeispiel ist eine XML-Webdienstmethode, bei der der Client nicht auf den Abschluss der XML-Webdienstmethode warten muss. Daher legt das Beispiel die OneWay -Eigenschaft auf fest 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 für eine XML-Webdienstmethode die OneWay -Eigenschaft auf true
festgelegt ist, muss der XML-Webdienstclient nicht warten, bis der Webserver die Verarbeitung der XML-Webdienstmethode abgeschlossen hat. Sobald der Webserver die SoapServerMessagedeserialisiert hat, 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 out-Parameter aufweisen.
Wenn Sie die .NET Framework XML-Webdienstmethoden der Version 1.0 verwenden, auf die entweder das SoapRpcMethodAttribute Attribut oder SoapDocumentMethodAttribute angewendet werden, auf die die OneWay -Eigenschaft auf true
festgelegt ist, haben Sie keinen Zugriff auf sie HttpContext mithilfe der statischen Current Eigenschaft. Um auf zuzugreifen HttpContext, leiten Sie die Klasse ab, die die XML-Webdienstmethode implementiert, von und WebService greifen Sie auf die Context -Eigenschaft zu.