方法级别的 C# 自定义属性不会覆盖类属性,这是意料之中的吗?



我有一个在类和方法级别的属性:

 [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true)]

如果我在方法级别使用差异参数设置相同的属性,则该方法的属性不会获得优先级。这是意料之中的,还是我在这里缺少的任何东西?

谢谢!

请注意,属性只是标记,不会改变任何东西,实际行为由您自己控制。

调度属性行为的唯一方法是反射。

在反射逻辑中,如果在类和方法级别都找到了属性,则可以在代码中控制它以获取方法级别 1 的值。

最新更新