gpt4 book ai didi

c# - 如何通过委托(delegate)查询方法属性?

转载 作者:太空狗 更新时间:2023-10-29 21:42:17 26 4
gpt4 key购买 nike

我有一个带有自定义属性的方法。如果我有一个引用此方法的委托(delegate),我能否判断该委托(delegate)所引用的方法是否具有该属性?

最佳答案

使用委托(delegate)的 Method 属性的 GetCustomAttributes 方法。这是一个示例:

    delegate void Del();

[STAThread]
static void Main()
{
Del d = new Del(TestMethod);
var v = d.Method.GetCustomAttributes(typeof(ObsoleteAttribute), false);
bool hasAttribute = v.Length > 0;
}

[Obsolete]
public static void TestMethod()
{
}

如果方法有属性,var v 将包含它;否则它将是一个空数组。

关于c# - 如何通过委托(delegate)查询方法属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2106883/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com