c# - 我们真的需要对 DLL 进行硬编码吗

标签 c# codedom

假设我想写一个小程序,我们可以给它一个 .CS 文件,它可以为我们编译它并告诉它是否有任何编译错误。所以我为此使用了 CodeDom。 当我想使用 CodeDOM 时,我必须添加 DLL 名称,以便我可以在运行时加载它们。 像这样:

    CompilerParameters parameters = new CompilerParameters();
    parameters.ReferencedAssemblies.Add("System.dll");
    parameters.ReferencedAssemblies.Add("System.Windows.Forms.dll");

但是这种方法存在一些问题: 我怎样才能确保我已经包含了所有必需的 DLL? 这是唯一的方法吗?除了像这样添加这些 DLL 之外,还有更好的方法吗?

谢谢。

最佳答案

您不需要硬编码任何东西。想象一下,在循环中调用 Add(),使用从文本文件中读取的 DLL 名称——或者在运行时在目录中找到的 DLL 名称。您拥有编写非常灵活的东西所需的所有工具。

关于c# - 我们真的需要对 DLL 进行硬编码吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10882922/

相关文章:

c# - 是否可以调试在运行时编译的代码?

c# - BooleanQuery 无法使用 Lucene.net 3.0.3

c# - C# 和 typescript 之间 JSON 的端到端类型安全

c# - 为 System.Data.Common 创建自定义驱动程序

c# - 变量声明未按预期解析

CustomAttribute 中的 C# CodeDOM 枚举值

c# - 64 位平台上的 COM

c# - 如何从对象列表中删除重复项?

c# - 使用 CodeDomProvider 隐藏命令提示符

c# - 使用 CodeDOM 以编程方式生成 C# 代码文档(摘要)