GenerateScriptTypeAttribute 类

定义

指定服务器类型必须在代理对象中生成。 此类不能被继承。

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 包含在代理对象中。

注解

在已启用 AJAX 的 ASP.NET 网站中,ASP.NET 可以为 Web 服务类的方法自动生成代理对象。 对于使用 ScriptServiceAttribute标记的任何 Web 方法的输入参数和返回值,它针对大多数顶级类型执行此操作。

在其他情况下,如果代理为服务器类型生成的对象,则必须手动应用 GenerateScriptTypeAttribute 。 可以应用于 Web 服务本身,也可以应用于GenerateScriptTypeAttribute任何用 标记的 WebMethodAttributeWeb 服务方法或static页面方法。

在某些情况下,即使类型对应于 Web 服务方法的输入参数或返回值,也不会自动生成代理。 在这种情况下,必须使用 GenerateScriptTypeAttribute 特性为类型生成代理对象。 这种情况适用于具有多个参数的泛型类型和数组,例如 Dictionary<string,<T>>

的一个或多个实例 GenerateScriptTypeAttribute 可以应用于 Web 服务类或方法。 然后,ASP.NET 将为 的每个声明 GenerateScriptTypeAttribute引用的每个顶级类型生成 ECMAScript (JavaScript) 代理类。

注意

如果要为嵌套类型生成代理对象,则必须手动应用于 GenerateScriptTypeAttribute 每个嵌套类型。 ASP.NET 仅为顶级类型生成代理,不会自动递归地将 属性应用于嵌套类型。

有关如何使用属性的详细信息,请参阅 特性

构造函数

GenerateScriptTypeAttribute(Type)

为指定类型初始化 GenerateScriptTypeAttribute 类的新实例。

属性

ScriptTypeId

获取或设置类型元数据标记的类型标识符。

Type

获取包含在代理对象中的类型。

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)

将一组名称映射为对应的一组调度标识符。

(继承自 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

检索对象的类型信息,然后可以使用该信息获取接口的类型信息。

(继承自 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

检索对象提供的类型信息接口的数量(0 或 1)。

(继承自 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供对某一对象公开的属性和方法的访问。

(继承自 Attribute)

适用于

另请参阅