【问题标题】:Use configurationfile of project使用项目的配置文件
【发布时间】:2018-12-18 03:02:59
【问题描述】:

我有 2 个项目的解决方案;让我们称它们为项目 A(基础项目)和项目 B(用于对项目 A 中的方法进行一些测试) 在项目 A 中,我使用 App.config 来存储一些配置选项,例如连接字符串和 appsettings。

当我将项目 B 设置为启动项目并从 A 运行方法时,程序会在 B(而不是 A)的 app.config 中查找配置,其中不存在这些配置选项。 这会导致“System.NullReferenceException”。

(当我将 A 设置为我的启动项目,并从 A 中访问该方法时,它工作正常) 我该如何解决这个问题?我希望我的项目 A 始终使用自己的 app.config 文件。

【问题讨论】:

  • App.config 总是从启动应用程序中获取。你可以在这里做的很少。您可以为项目 A 编写构建后事件以将 app.config 复制到项目 B。

标签: c# app-config


【解决方案1】:

如前所述,加载的应用程序决定了加载哪个 app.config。 如果可以的话,尝试在项目库C中提取你喜欢测试的方法。

另一种解决方案是在永久配置文件中加载配置设置。这里解释Write appSettings in external file

A 和 B 都需要在自己的 app.config 中进行一些编辑以引用外部配置文件。

【讨论】:

    【解决方案2】:

    查看 ProjA\bin\Debug。那里有 ProjA.exe.config 文件。当您运行 ProjA.exe 时,该进程会从 ProjA.exe.config 中读取配置设置。

    对于测试项目 ProjB,它将是 ProjB\bin\Debug 和 ProjB.dll 和 ProjB.dll.config。

    是的,您需要将配置设置复制到 ProjB\App.config 文件中才能使其正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-16
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      相关资源
      最近更新 更多