【发布时间】:2020-01-09 22:07:34
【问题描述】:
我有一个类,我想动态调用它的方法。但我做不到。我错过了什么吗?
public class P_WATER
{
private int[] jDS = new int[20];
private int n;
public int[] JDS { get => jDS; set => jDS = value; }
public int N { get => n; set => n = value; }
public void P_WATER1()
{
//something...
}
}
public class Test
{
P_WATER P_WATERState1 = new P_WATER();
PLibStateList.Add(P_WATERState1);
// Try to invoke methods from each objects.
foreach (object item in StateUtility.PLibStateList)
{
Type objType= item.GetType();
objType.InvokeMember(objType.Name + "1", BindingFlags.InvokeMethod, null, item, null);
}
}
当尝试调用该方法时,出现以下异常:
无法加载文件或程序集“System.Runtime, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或其依赖项之一。系统找不到指定的文件。
但是我的程序集很好地绑定到了项目。
【问题讨论】:
-
发布的代码无法编译,否则代码可以工作。将此代码发布到新项目中并尝试在那里重现问题。
标签: c# c#-4.0 reflection