我正在使用一个实用程序,它允许您在运行时编译一段代码。我想将该代码放入临时程序集中并加载它。
var provider = new CSharpCodeProvider();
var parameters = new CompilerParameters {
GenerateInMemory = true,
OutputAssembly = "SomeName"
};
... // add assembly references
var results = provider.CompileAssemblyFromSource(parameters, mySourceCode);
var payload = Activator.CreateInstance(results.CompiledAssembly.GetTypes().First());
稍后,在用户更改代码后,我想创建一个包含更改的新临时程序集。但是,似乎旧版本仍然存在并且混淆了我的其余代码。如何卸载原始临时组件?