I'm trying to compile C# code(nothing too complex, just Main() ) using CSharpCodeProvider. This code returns a string, but I can't understand how to pass this value to my function. Is it possible?
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());