폴더에 DLL을 저장 : 나는 내 자신의 특정 폴더에 생성 된 DLL을 저장하려면 어떻게컴파일 런타임에서 조립이 내 코드입니다
Microsoft.CSharp.CSharpCodeProvider provider = new CSharpCodeProvider();
ICodeCompiler compiler = provider.CreateCompiler();
CompilerParameters compilerparams = new CompilerParameters();
compilerparams.GenerateInMemory = false;
CompilerResults results = compiler.CompileAssemblyFromSource(compilerparams, code);
if (results.Errors.HasErrors)
{
StringBuilder errors = new StringBuilder("Compiler Errors :\r\n");
foreach (CompilerError error in results.Errors)
{
errors.AppendFormat("Line {0},{1}\t: {2}\n",
error.Line, error.Column, error.ErrorText);
}
throw new Exception(errors.ToString());
}
else
{
return results.CompiledAssembly;
}
? 디버깅 할 때, 어떻게 든 어셈블리 위치는 'AppData/Local/Temp /'폴더에 있습니다.
나는 여전히 'AppData/Local/Temp /'에 있지만이 대답을 수락 할 것입니다. – dausdashsan
@dausdashsan 이상합니다. 나는 코드를 테스트했고, 'OutputAssembly' 속성이 가리키는 곳에 어셈블리를 두었습니다. 어셈블리가'AppData/Local/Temp /'에있는 유일한 방법은 빈/널 문자열이'OutputAssembly' 속성에 전달 될 때입니다. – IronGeek