我想编译一个存在于磁盘上其他文件夹中的 .cs 程序,并使用另一个 .cs 程序或控制台应用程序或窗口应用程序生成它的 .dll。我尝试使用以下
using (StreamReader textReader = new StreamReader(@"path\Filename.cs"))
{
textFile = textReader.ReadToEnd();
Console.WriteLine(textFile);
}
CodeDomProvider codeProvider = new CSharpCodeProvider();
ICodeCompiler compiler = codeProvider.CreateCompiler();
// add compiler parameters
CompilerParameters compilerParams = new CompilerParameters();
compilerParams.CompilerOptions = "/target:library /optimize";
compilerParams.GenerateExecutable = false;
compilerParams.GenerateInMemory = true;
compilerParams.IncludeDebugInformation = false;
compilerParams.ReferencedAssemblies.Add("mscorlib.dll");
compilerParams.ReferencedAssemblies.Add("System.dll");
// compile the code
CompilerResults results = compiler.CompileAssemblyFromSource(compilerParams, textFile);