中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C#中GetCustomAttributes如何獲取參數屬性

c#
小樊
121
2024-08-19 13:12:31
欄目: 編程語言

在C#中,您可以使用GetCustomAttributes方法來獲取指定成員(如類、方法、屬性等)的自定義屬性。這個方法接受一個Type參數,用于指定要獲取的屬性的類型。以下是一個示例代碼,演示如何獲取參數的屬性:

using System;
using System.Reflection;

class Program
{
    static void Main()
    {
        // 獲取方法的參數信息
        MethodInfo methodInfo = typeof(Program).GetMethod("MyMethod");
        ParameterInfo[] parameters = methodInfo.GetParameters();

        // 循環遍歷方法的參數,獲取每個參數的屬性
        foreach (ParameterInfo parameter in parameters)
        {
            object[] attributes = parameter.GetCustomAttributes(typeof(MyAttribute), true);
            foreach (MyAttribute attribute in attributes)
            {
                Console.WriteLine("Parameter {0} has attribute {1}", parameter.Name, attribute.SomeProperty);
            }
        }
    }

    public static void MyMethod([My("Attribute1")] int param1, [My("Attribute2")] string param2)
    {
        // do something
    }
}

[AttributeUsage(AttributeTargets.Parameter)]
class MyAttribute : Attribute
{
    public string SomeProperty { get; set; }

    public MyAttribute(string propertyValue)
    {
        this.SomeProperty = propertyValue;
    }
}

在上面的示例中,我們定義了一個自定義屬性MyAttribute,并將其應用于MyMethod方法的參數。然后使用GetCustomAttributes方法獲取參數的屬性,并輸出每個參數及其屬性的值。

0
隆化县| 长子县| 龙里县| 酒泉市| 广元市| 石林| 枝江市| 静海县| 杭州市| 锡林郭勒盟| 霍邱县| 安吉县| 中西区| 永福县| 磐安县| 洛隆县| 海口市| 鄱阳县| 资阳市| 高雄市| 大渡口区| 达孜县| 光泽县| 老河口市| 桦南县| 金堂县| 罗江县| 合山市| 达孜县| 饶平县| 江北区| 临汾市| 石景山区| 华池县| 丁青县| 天峨县| 宜君县| 巴东县| 湖北省| 鄂伦春自治旗| 三河市|