WebMethodAttribute 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在使用 ASP.NET 建立的 XML Web 服務中加入此屬性,即可從遠端網頁用戶端呼叫該方法。 此類別無法獲得繼承。
public ref class WebMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class WebMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type WebMethodAttribute = class
inherit Attribute
Public NotInheritable Class WebMethodAttribute
Inherits Attribute
- 繼承
- 屬性
範例
在下面的範例中,該方法 GetMachineName 可透過網路遠端呼叫,因為它具有 WebMethodAttribute。
GetUserName 無法遠端呼叫,因為它沒有 WebMethodAttribute,儘管它 是 public。
<%@ WebService Language="C#" Class="Util"%>
using System;
using System.Web.Services;
public class Util: WebService {
public string GetUserName() {
return User.Identity.Name;
}
[ WebMethod(Description="Obtains the Server Machine Name",
EnableSession=true)]
public string GetMachineName() {
return Server.MachineName;
}
}
<%@ WebService Language="VB" Class="Util"%>
Imports System
Imports System.Web.Services
Public Class Util
Inherits WebService
Public Function GetUserName() As String
Return User.Identity.Name
End Function
<WebMethod(Description := "Obtains the Server Machine Name", _
EnableSession := True)> _
Public Function GetMachineName() As String
Return Server.MachineName
End Function
End Class
備註
類別中擁有此屬性設定的方法稱為 XML Web 服務方法。 方法與類別必須是公開的,並能在 ASP.NET 網頁應用程式中執行。
建構函式
| 名稱 | Description |
|---|---|
| WebMethodAttribute() |
初始化 WebMethodAttribute 類別的新執行個體。 |
| WebMethodAttribute(Boolean, TransactionOption, Int32, Boolean) |
初始化 WebMethodAttribute 類別的新執行個體。 |
| WebMethodAttribute(Boolean, TransactionOption, Int32) |
初始化 WebMethodAttribute 類別的新執行個體。 |
| WebMethodAttribute(Boolean, TransactionOption) |
初始化 WebMethodAttribute 類別的新執行個體。 |
| WebMethodAttribute(Boolean) |
初始化 WebMethodAttribute 類別的新執行個體。 |
屬性
| 名稱 | Description |
|---|---|
| BufferResponse |
取得或設定此請求的回應是否被緩衝。 |
| CacheDuration |
取得或設定回應應在快取中停留的秒數。 |
| Description |
一則描述 XML Web 服務方法的描述性訊息。 |
| EnableSession |
表示是否啟用了 XML Web 服務方法的會話狀態。 |
| MessageName |
XML Web 服務方法名稱,用於傳遞與回傳 XML Web 服務方法的資料。 |
| TransactionOption |
表示 XML Web 服務方法的交易支援。 |
| TypeId |
在衍生類別中實作時,取得這個 Attribute的唯一標識碼。 (繼承來源 Attribute) |
方法
| 名稱 | Description |
|---|---|
| Equals(Object) |
傳回值,這個值表示這個實例是否等於指定的物件。 (繼承來源 Attribute) |
| GetHashCode() |
傳回這個實例的哈希碼。 (繼承來源 Attribute) |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| IsDefaultAttribute() |
在衍生類別中覆寫時,指出這個實例的值是否為衍生類別的預設值。 (繼承來源 Attribute) |
| Match(Object) |
在衍生類別中覆寫時,傳回值,指出這個實例是否等於指定的物件。 (繼承來源 Attribute) |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| ToString() |
傳回表示目前 物件的字串。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承來源 Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
擷取 物件的型別資訊,可用來取得介面的類型資訊。 (繼承來源 Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
擷取物件提供的類型資訊介面數目 (0 或 1)。 (繼承來源 Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
提供物件所公開屬性和方法的存取權。 (繼承來源 Attribute) |