我正在开发一个实用程序,它允许您在运行时编译一段代码。我想将该代码放在一个临时程序集中并加载它。
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());
稍后,在用户对代码进行更改后,我想使用更改创建一个新的临时程序集。但是,似乎旧版本仍然存在并混淆了我的其余代码。如何卸载原始临时程序集?