从目标内部访问.Net属性的属性例如,方法

问题描述

| 是否可以从应用属性的项目中访问属性属性(例如方法)?例如,使用下面的代码,我可以使用\“ Search \”方法访问\“ RequiresConnection \”属性属性吗?
    [RequiresConnection]
    public SearchResult Search(SearchInfo searchInfo)
    {
    }
    

解决方法

当然
class TheClass {
  [RequiresConnection]
  public SearchResult Search(SearchInfo searchInfo) {
    MethodInfo methodInfo = typeof(TheClass).GetMethod(\"Search\");
    RequiresConnection attrib = (RequiresConnection).methodInfo.GetCustomAttributes(
      typeof(RequiresConnection),false)[0];
    ,您可以使用反射。该示例未专门执行所需的操作,但您可以通过从方法中调用
GetCustomAttributes
进行调整。     ,当然。那会一直
var attributes = StackTrace.GetFrame(0).GetMethod().GetCustomAttributes();