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 執行階段 Metadata Export Tool) 會將回傳值命名為「value」。 當你在 Windows 8.x 商店應用程式中使用 JavaScript 撰寫的元件時,你可以用這個名稱來取得回傳值。 例如,假設一個元件定義了一個方法,該方法具有回傳值及兩個 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」的參數,必須給回傳值取一個不同的名稱。 或者你可能想用更有意義的名稱(例如這個例子中的「平均」)。 把屬性 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
建構函式
| 名稱 | Description |
|---|---|
| ReturnValueNameAttribute(String) |
初始化該類別的新實例 ReturnValueNameAttribute ,並指定回傳值的名稱。 |
屬性
| 名稱 | Description |
|---|---|
| Name |
取得 Windows 執行階段 元件中方法回傳值指定的名稱。 |
| 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) |