我有一个dll,它有一些类,这些类有一些方法.其中一些方法在其中有另一个方法调用.
如何检查类中的方法是否具有特定方法.我已经对此进行了一些谷歌搜索,我能够在dll中找到类,如下所示:
public List < string > GetClassFromDlLstring(string dllName)
{
Assembly assemblies = null;
try
{
assemblies = Assembly.LoadFrom(dllName);
}
catch (Exception ex)
{
}
var allTypes = assemblies.GetTypes();
return (from allType in allTypes where allType.IsClass select allType.ToString()).ToList();
}
Run Code Online (Sandbox Code Playgroud)
类似地,一种方法可以找到类中的所有方法,如下所示:
public List <string> GetAllTMethodClass(string dllName, string className)
{
var assemblies = Assembly.LoadFrom(dllName);
Type type = assemblies.GetType(className);
var temp = new List <string> ();
try
{
MethodInfo[] methods = type.GetMethods();
//MethodInfo[] methods = type.GetMethods(BindingFlags.Instance);
foreach(MethodInfo meth in methods)
{
if (meth.MemberType == MemberTypes.Method && meth.MemberType != MemberTypes.Property)
temp.Add(meth.Name);
}
}
catch (Exception ex)
{
}
return temp;
}
Run Code Online (Sandbox Code Playgroud)
我现在有一个问题,上面的函数也返回属性名称.
此外,我想通过功能列表并检查天气功能是否包含特定功能.我怎样才能做到这一点?
我找到了类似的帖子,其链接如下
- 查看是否在使用反射的方法内调用方法
- 获取在C#方法体内使用的类型
| 归档时间: |
|
| 查看次数: |
374 次 |
| 最近记录: |