app.config 在哪里

Posted

技术标签:

【中文标题】app.config 在哪里【英文标题】:Where is the app.config 【发布时间】:2014-09-05 15:46:58 【问题描述】:

我在 Visual Studio 2013(类库)中创建了一个新项目。没有 app.config。当我选择添加新项目时,列表中没有 app.config。是 app.config 吗?

我有一个 ClassLibrary,其中包含许多 NUnit 测试类。问题是整个应用程序中有很多这样的代码:

_ConString = ConfigurationManager.ConnectionStrings("GeniedbConnection").ConnectionString

因此,当我运行测试时,我得到一个空指针异常。是否可以在测试类中执行此操作:

ConfigurationManager.ConnectionStrings("GeniedbConnection").ConnectionString = "Connection String"

当我将上面一行的代码放入测试类时,我得到一个空指针异常。我相信这是因为我试图在声明变量之前设置它。对吗?

【问题讨论】:

Using app.config with a class library的可能重复 【参考方案1】:

类库不包含应用配置,因为它本身不是应用,但它可以是应用的补充。例如,如果您要创建一个 winform 应用程序,您将看到一个应用程序配置。

类库是在不同应用程序之间频繁交换的dll文件,这些是经常使用的类,可以加快开发速度,因为您不必编写以前编写过的代码。

MSDN Class Library

编辑:

您应该使用 UnitTest 项目而不是类库。以下问题+答案将帮助您了解如何使用应用程序的 .config 文件:Use appliction config file from unittest project

UnitTest Project

【讨论】:

谢谢。我已经编辑了问题以使其更清楚。请再看一遍OP。【参考方案2】:

如果您在类库中添加对 System.Configuration 的引用,那么您可以使用以下命名空间来访问任何使用它的应用程序的 app.config:

Imports System.Configuration.ConfigurationManager
...
Dim x As String = AppSettings("MySettingName")

【讨论】:

谢谢。我已经编辑了问题以使其更清楚。请再看一遍OP。

以上是关于app.config 在哪里的主要内容,如果未能解决你的问题,请参考以下文章

在vs中怎么手工配置App.config

项目App.config中指定的ConnectionStrings不在ConfigurationManager.ConnectionStrings中

关于App.config文件

app.config 全球化

在WPF程序运行时动态修改app.config文件后如何立即生效

配置文件app.config怎么调用呢?