string code = @"
using System;
namespace First
{
public class Program
{
public static void Main()
{
" +
"Console.WriteLine(\"Hello, world!\");"
+ @"
}
}
}
";
//Create the provider and parameters of the compiler:
CSharpCodeProvider provider = new CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
/ * Определить параметры компилятора (необязательно) - с этого момента мы можем добавить ссылку на внешние библиотеки. Мы также можем определить, будет ли наш скомпилированный код генерироваться только в памяти или в файле DLL или EXE: * /
// Reference to System.Drawing library
parameters.ReferencedAssemblies.Add("System.Drawing.dll");
// True - memory generation, false - external file generation
parameters.GenerateInMemory = true;
// True - exe file generation, false - dll file generation
parameters.GenerateExecutable = true;
Compile assembly:
CompilerResults results = provider.CompileAssemblyFromSource(parameters, code);
код: https://www.codeproject.com/Tips/715891/%2FTips%2F715891%2FCompiling-Csharp-Code-at-Runtime
спасибо