通过


SoapRpcMethodAttribute.OneWay 属性

定义

获取或设置 XML Web 服务客户端是否等待 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

属性值

true 如果 XML Web 服务客户端没有等待 Web 服务器完全处理 XML Web 服务方法,则为否则,为 false. 默认值为 false

示例

下面的代码示例将 OneWay 属性设置为 true.

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

注解

当 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已将属性设置为trueSoapDocumentMethodAttribute属性应用于它们OneWay,则不允许使用静态Current属性访问它们HttpContext。 若要访问 , HttpContext请派生实现 XML Web 服务方法 WebService 的类并访问 Context 该属性。

适用于