gpt4 book ai didi

c# - 您如何反射(reflection)应用于返回值的属性?

转载 作者:太空狗 更新时间:2023-10-29 20:15:13 24 4
gpt4 key购买 nike

考虑以下几点:

[AttributeUsage(AttributeTargets.Parameter | AttributeTargets.ReturnValue)]
public class NotNullAttribute : Attribute
{
}

public class Class1
{
[return: NotNull]
public static string TestMethod([NotNull] string arg)
{
return arg + " + " + arg;
}
}

如何使用 System.Reflection 看到 NotNullAttribute 属性已应用于方法的返回值?如果不能,那么 [return: ] 语法背后的目的是什么?

最佳答案

MethodInfo 有一个 ReturnTypeCustomAttributes 属性,如果你调用它的 GetCustomAttributes() 你会得到返回值属性。

MethodInfo mi = typeof(Class1).GetMethod("TestMethod");
object[] attrs = mi.ReturnTypeCustomAttributes.GetCustomAttributes(true);

关于c# - 您如何反射(reflection)应用于返回值的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2648275/

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