如何从*.dll中获取所有公共方法我有一个用C#写的*.dll,我需要获取*.dll中包含的所有公共方法或者类列表。有没有办法在C#中以编程方式执行此操作?是使用Assembly.GetTypes提取所有类型,然后对每个类型使用反射来迭代公共方法。程序集a=Assembly.LoadWithPartialName("...");类型[]类型=a.GetTypes();foreach(Typetypeintypes){if(!type.IsPublic){continue;}MemberInfo[]members=type.GetMembers(BindingFlags.Public|BindingFlags.Instance|BindingFlags.InvokeMethod);foreach(MemberInfomemberinmembers){Console.WriteLine(type.Name+"."+member.Name);}}varassembly=//获取程序集vartypes=assembly.GetExportedTypes();foreach(类型中的var类型){varmethods=type.GetMethods(BindingFlags.Public);}GetExportedTypes将返回程序集中的所有公共类型。您也没有指定是否只需要实例方法、静态方法或两者。使用System.Net.Reflection。反射类允许您在运行时查询DLL类型元数据。类似this.GetType().Assembly.GetTypes();以上就是C#学习教程:HowtoRetrieveAllPublicMethodsfrom*.dll如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注——这篇文章整理自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
