我有以下代码:
public static void Invoke(string assemblyName, string scheduledTaskExecutorName)
{
ObjectHandle objectHandle = Activator.CreateInstance(assemblyName, scheduledTaskExecutorName);
IScheduledTaskExecutor scheduledTaskExecutor = (IScheduledTaskExecutor)objectHandle.Unwrap();
scheduledTaskExecutor.ExecuteScheduledTask();
}
我有一个名为的类DummyScheduledTaskExecutor
,如下所示:
public class DummyScheduledTaskExecutor : IScheduledTaskExecutor
{
public void ExecuteScheduledTask()
{
DummyTextFile.Text = "Success!";
}
}
它驻留在程序集名称(在程序集的属性中定义)为 的程序集中Tests.WebApplication.Application.Unit
。
我的电话Invoke(string, string)
看起来像这样:
ScheduledTaskInvoker.Invoke("Tests.WebApplication.Application.Unit", "DummyScheduledTaskExecutor");
尝试运行此代码只会引发 TypeLoadException。我是否错误地表达了程序集或类型名称,还是发生了其他事情?