c# - 在运行时动态生成 DLL 程序集

标签 c# .net dll code-generation

目前我有一些动态生成的代码。换句话说,一个C#.cs文件是由程序动态创建的,目的是将这个C#文件包含在另一个项目中。

挑战是我想生成一个 .DLL 文件而不是生成一个 C# .cs 文件,这样它就可以被任何类型的 .NET 应用程序(不仅是 C#)引用,因此更有用。

最佳答案

using System.CodeDom.Compiler;
using System.Diagnostics;
using Microsoft.CSharp;

CSharpCodeProvider codeProvider = new CSharpCodeProvider();
ICodeCompiler icc = codeProvider.CreateCompiler();
System.CodeDom.Compiler.CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.OutputAssembly = "AutoGen.dll";
CompilerResults results = icc.CompileAssemblyFromSource(parameters, yourCodeAsString);

改编自http://support.microsoft.com/kb/304655

关于c# - 在运行时动态生成 DLL 程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/604501/

相关文章:

c# - 无法使用 CCCP : Couchbase memcached bucket exception 进行引导

c# - 如何使用 FluentValidation 在 IValidateOptions 中编写流畅的验证规则?

.net - 如何诊断 Resharper 单元测试运行器 "Unable to load one or more of the requested types"错误

C++ 模板特化编译

azure - 无法加载 DLL 'Microsoft.Azure.Documents.ServiceInterop.dll' [使用 Microsoft.Azure.DocumentDB 1.17.0]

windows - D 运行时作为 DLL

C# 使用内存映射文件

c# - 从另一个项目 C# 调用类

c# - Json.NET - 直接从流反序列化为动态?

c# - 开始使用 language.ext(函数式 C#)