SoapDocumentMethodAttribute.OneWay プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Web サーバーが XML Web サービス メソッドの処理を完了するまで XML Web サービス クライアントが待機するかどうかを示す値を取得または設定します。
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
プロパティ値
Web サーバーが XML Web サービス メソッドの処理を完了するまで XML Web サービス クライアントが待機しない場合は 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 サーバーがメッセージを正常に処理したことを確認しません。
一方向のメソッドは、戻り値または出力パラメーターを持つことはできません。
.NET Framework バージョン 1.0 の XML Web サービス メソッドを使用しているSoapRpcMethodAttribute場合、 または SoapDocumentMethodAttribute 属性が に設定されている 属性が にtrue
OneWay設定されている場合は、静的Currentプロパティを使用して それらにHttpContextアクセスできません。 に HttpContextアクセスするには、 から XML Web サービス メソッド WebService を実装するクラスを派生させ、 プロパティに Context アクセスします。
適用対象
こちらもご覧ください
.NET