ReturnValueNameAttribute 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定Windows 运行时组件中方法的返回值的名称。
public ref class ReturnValueNameAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Delegate | System.AttributeTargets.ReturnValue, AllowMultiple=false, Inherited=false)]
public sealed class ReturnValueNameAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Delegate | System.AttributeTargets.ReturnValue, AllowMultiple=false, Inherited=false)>]
type ReturnValueNameAttribute = class
inherit Attribute
Public NotInheritable Class ReturnValueNameAttribute
Inherits Attribute
- 继承
- 属性
注解
在Windows 运行时组件中,方法和返回值的所有参数都必须具有名称。 默认情况下,Winmdexp.exe(Windows 运行时元数据导出工具)为返回值命名为“value”。 在用 JavaScript 编写的 Windows 8.x 应用商店应用中使用组件时,可以使用此名称来检索返回值。 例如,假设组件定义了一个返回值和两个out参数的方法(ByRef参数,Visual Basic中的 OutAttribute 属性):
public static int ComputeAverage([ReadOnlyArray()] int[] input,
out int minValue, out int maxValue)
{
…
}
Public Shared Function ComputeAverage( _
<ReadOnlyArray()> ByVal input As Integer, _
<Out()> ByRef minValue As Integer, _
<Out()> ByRef maxValue As Integer) As Integer
…
End Function
从 JavaScript 调用函数时,可以通过其默认名称value():
var data = [5, 13, 23, 37];
var results = SampleComponent.TestStuff.computeAverage(data);
var formattedResults = "Min=" + results.minValue + ", Avg=" +
results.value + ", Max=" + results.maxValue;
如果已有名为“value”的参数,则必须为返回值提供其他名称。 或者,你可能只想使用更有意义的名称(如此示例中的“average”)。 将 ReturnValueNameAttribute 属性应用于方法并指定新名称。
[return: ReturnValueName("average")]
public static int ComputeAverage([ReadOnlyArray()] int[] input,
out int minValue, out int maxValue)
{
…
}
Public Shared Function ComputeAverage( _
<ReadOnlyArray()> ByVal input As Integer, _
<Out()> ByRef minValue As Integer, _
<Out()> ByRef maxValue As Integer) _
As <ReturnValueName("average")> Integer
…
End Function
构造函数
| 名称 | 说明 |
|---|---|
| ReturnValueNameAttribute(String) |
初始化类的新实例 ReturnValueNameAttribute ,并指定返回值的名称。 |
属性
| 名称 | 说明 |
|---|---|
| Name |
获取为Windows 运行时组件中方法的返回值指定的名称。 |
| 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) |