GenerateScriptTypeAttribute 類別

定義

指定伺服程式類型必須在 Proxy 物件中產生。 此類別無法獲得繼承。

public ref class GenerateScriptTypeAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Method, AllowMultiple=true)]
public sealed class GenerateScriptTypeAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Method, AllowMultiple=true)>]
type GenerateScriptTypeAttribute = class
    inherit Attribute
Public NotInheritable Class GenerateScriptTypeAttribute
Inherits Attribute
繼承
GenerateScriptTypeAttribute
屬性

範例

下列範例示範如何將套用 GenerateScriptTypeAttribute 至 web 服務類別和 web 方法。 如此一 ColorObject 來,就會將型別和其巢狀型別 FavoriteColors 包含在 proxy 物件中。

備註

在支援 AJAX 的 ASP.NET 網站中,ASP.NET 可以自動產生 web 服務類別之方法的 proxy 物件。 它會針對輸入參數的大部分最上層類型,以及標記為的任何 Web 方法傳回值 ScriptServiceAttribute

在其他情況下,如果您針對伺服器類型產生的 proxy 物件,則必須 GenerateScriptTypeAttribute 手動套用。 您可以將套用 GenerateScriptTypeAttribute 至 web 服務本身,或套用至任何標記為的 web 服務方法或 static 頁面方法 WebMethodAttribute

在某些情況下,即使型別對應至 Web 服務方法的輸入參數或傳回值,也不會自動產生 proxy。 在這種情況下,您必須使用 GenerateScriptTypeAttribute 屬性來產生類型的 proxy 物件。 這會發生在具有一個以上引數的泛型型別和陣列,例如 Dictionary<string,<T>>

您可以將一或多個實例套用 GenerateScriptTypeAttribute 至 Web 服務類別或方法。 ASP.NET 接著會針對每個最上層型別產生 ECMAScript (JavaScript) proxy 類別,以供每個宣告參考 GenerateScriptTypeAttribute

注意

如果您想要產生巢狀型別的 proxy 物件,您必須手動套用 GenerateScriptTypeAttribute 至每個嵌套型別。 ASP.NET 只會產生最上層類型的 proxy,且不會自動以遞迴方式將屬性套用至巢狀型別。

如需如何使用屬性的詳細資訊,請參閱 屬性

建構函式

GenerateScriptTypeAttribute(Type)

為指定的型別初始化 GenerateScriptTypeAttribute 類別的新執行個體。

屬性

ScriptTypeId

取得或設定型別中繼資料標記的型別識別項。

Type

取得 Proxy 物件中包含的型別。

TypeId

在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。

(繼承來源 Attribute)

方法

Equals(Object)

傳回值,這個值指出此執行個體是否與指定的物件相等。

(繼承來源 Attribute)
GetHashCode()

傳回這個執行個體的雜湊碼。

(繼承來源 Attribute)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
IsDefaultAttribute()

在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。

(繼承來源 Attribute)
Match(Object)

在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。

(繼承來源 Attribute)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

明確介面實作

_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)

適用於

另請參閱