C#获得类的方法和方法参数

Posted GarsonZhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#获得类的方法和方法参数相关的知识,希望对你有一定的参考价值。

  Type t = typeof(CommonController);


            StringBuilder str = new StringBuilder();

            MethodInfo[] methors = t.GetMethods(BindingFlags.Instance | BindingFlags.Public);
            var md = t.GetCustomAttribute<System.ComponentModel.DescriptionAttribute>();
            str.AppendFormat("路由:" + t.Name).AppendLine("");
            str.AppendFormat("描述" + md.Description).AppendLine("");

            foreach (var v in methors)
            {

                var af = v.GetCustomAttribute<Models.Attribute.APIFunctionAttribute>();
                if (af != null)
                {
                    str.AppendFormat("\t功能标识:{0}", v.Name).AppendLine("");
                    str.AppendFormat("\t功能描述:{0}", af.Description).AppendLine("");
                    ParameterInfo[] ps = v.GetParameters();
                    str.AppendFormat("\t参数:总数{0}", ps.Length).AppendLine("");
                    foreach (ParameterInfo p in ps)
                    {
                        str.AppendFormat("\t\t名称{0}", p.Name).AppendLine("");
                        str.AppendFormat("\t\t类型{0}", p.ParameterType.FullName).AppendLine("");
                    }
                }

 

以上是关于C#获得类的方法和方法参数的主要内容,如果未能解决你的问题,请参考以下文章

c#如何获取某一命名空间下的所有的类的信息(方法以及参数)

C# 使用Awaiter

C# 获得目录创建时间的源码片段

C#:你如何获得一个类的基类?

C#反射调用类的私有方法

C#怎么使用反射获取事件的响应方法