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 在哪里的主要内容,如果未能解决你的问题,请参考以下文章
项目App.config中指定的ConnectionStrings不在ConfigurationManager.ConnectionStrings中