.NET如何解析动态编译在内存中的程序集所引用的程序集。
我在托管Razor视图引擎,并使用它即时编译视图,但是无法将其引用到主项目的程序集。在编译参数中,我添加了一个对项目程序集的引用,类似于下面这样:
// Add references to all currently loaded assemblies
foreach (var a in AppDomain.CurrentDomain.GetAssemblies())
{
compileParams.ReferencedAssemblies.Add(a.Location);
}
代码编译和运行正常,只要我不引用项目DLL中的任何类型 - 如果引用了,则会出现以下错误:
"无法加载文件或程序集'MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'或该程序集的某个依赖项。系统找不到指定的文件。"
我已经仔细检查,在抛出异常的地方已经加载了此程序集。我错过了什么?