查找自定义属性的所有使用并检索其值

本文关键字:检索 自定义属性 查找 | 更新日期: 2023-09-27 18:03:19

我有一个MVC4应用程序与多个控制器,所有从BaseController继承。在其中一些控制器中,我有带有PageKey自定义属性的Actions。Page Key有两个属性(Group &密钥)。

我需要一种在所有控制器中获取此属性的每个实例并访问其值的方法。我还希望以后在添加新的控制器或属性实例时不必修改代码。

查找自定义属性的所有使用并检索其值

好的,我知道了。

var attributes = Assembly.GetExecutingAssembly()
            .GetTypes()
            .SelectMany(t => t.GetMethods())
            .SelectMany(m => m.GetCustomAttributes())
            .Where(a => a.GetType() == typeof(PageKeyAttribute));

感谢Alexei Levenkov。