SoapDocumentMethodAttribute.OneWay 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定 XML Web Service 用戶端是否等候 Web 伺服器完成處理 XML Web Service 方法。
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
屬性值
如果 XML Web Service 用戶端不等候 Web 伺服器以完成處理 XML Web Service 方法,則為 true
。 預設值是 false
。
範例
下列程式碼範例是 XML Web 服務方法,不需要用戶端等候 XML Web 服務方法完成。 因此,此範例會將 OneWay 屬性設定為 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
備註
當 XML Web 服務方法的 OneWay 屬性設定為 true
時,XML Web 服務用戶端不需要等候 Web 服務器完成 XML Web 服務方法的處理。 一旦 Web 服務器已還原序列化 SoapServerMessage ,但在叫用 XML Web 服務方法之前,伺服器會傳回 HTTP 202 狀態碼。 HTTP 202 狀態碼會向用戶端指出 Web 服務器已開始處理訊息。 因此,XML Web 服務用戶端不會收到 Web 服務器已成功處理訊息的通知。
單向方法不能有傳回值或任何 out 參數。
如果您使用 .NET Framework 1.0 版 XML Web 服務方法,這些方法已 SoapRpcMethodAttribute 將 或 SoapDocumentMethodAttribute 屬性套用至它們 OneWay ,且 屬性設定為 true
,則無法使用靜態 Current 屬性存取它們 HttpContext 。 若要存取 HttpContext ,請從 WebService 衍生實作 XML Web 服務方法的 類別,並存取 Context 屬性。