为什么Web.config在项目文件夹而不是bin中查找configSource?

时间:2012-08-10 18:38:15

标签: asp.net visual-studio-2010 configuration web-config

我已经定义了我的configSource来查找名为config的子目录中的配置文件,如下所示:

<connectionStrings configSource="config\ConnectionStrings.config" />

我将配置文件定义为链接文件,因此当构建发生时,它会被复制到我的bin \ config文件夹中。

但是,我的网络应用项目正在查看开发项目配置文件夹,而不是部署 bin \ config文件夹。我用Process Monitor证实了这一点。

所以我有几个问题:

  1. 为什么它在那里而不是bin \ config - 我错过了某个地方的相对路径设置吗?
  2. 链接文件不会复制到那里,只能复制到bin。我的理解是这是正确的行为。这是正确的假设还是应该复制到两个位置?如果是,启用该设置的设置是什么?
  3. 使用子文件夹作为链接文件是理所当然的,还是应该将它们留在项目根目录中?
  4. 非常感谢!

    更新:我正在使用此处描述的方法:http://consultingblogs.emc.com/jamesdawson/archive/2008/06/03/using-linked-files-with-web-application-projects.aspx以确保复制配置文件,并进行一些实验我已回答问题#2。不,它不是Visual Studio中的默认行为,但这种解决方法可确保将文件复制到两个位置。

1 个答案:

答案 0 :(得分:2)

我相信这可能对你有所帮助。 How to use multiple Web.config files

基本上,您可以拥有任意数量的配置文件,只要它们位于Web应用程序的单独文件夹中即可。我对你提到“不同的网络项目”的部分评论感到有点困惑,你能否在那个部门更具体一点? 另外,我在msdn上找到了更多有关此内容的详细信息,我建议您查看一下。

快乐的编码!