我正在尝试使用 CSharpCodeProvider 编译 C# 代码(没什么复杂的,只是 Main() )。此代码返回一个字符串,但我不明白如何将此值传递给我的函数。可能吗?
public string Execute(List<String> code, List<String> _referencedAssemblies)
{
CompilerParameters cp = new CompilerParameters();
for (int i = 0; i < _referencedAssemblies.Count; i++) {
cp.ReferencedAssemblies.Add(_referencedAssemblies[i]);
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < code.Count; i++) {
sb.Append(code[i]);
}
CSharpCodeProvider provider = new CSharpCodeProvider();
CompilerResults result = provider.CompileAssemblyFromSource(cp, sb.ToString());