使用SlowCheetah引用项目app.config转换

时间:2013-06-03 15:58:17

标签: asp.net web-deployment web-config-transform slowcheetah

我有一个ASP.NET MVC 4 Web项目

  

WebUI中

引用ASP.NET 4代码库

  

DAL

代码库引用了SlowCheetah 2.5.5 NuGet包,并为App.Config设置了几个转换。

WebUI正在使用正常的Web.Config转换,但我还添加了对SlowCheetah的引用作为我的问题的测试,但它没有改变我的问题。

当我使用

发布时
  

MS Web Deploy

在Visual Studio 2012中或直接发布到

  

文件系统

使用QA配置将正确的Web.QA.config放在我的网站的根目录中,但引用的类库配置不起作用,我在主页上收到sql连接错误,提醒我正确的App.Config转换很可能不会用于引用的DAL项目。

我认为这将是.dll.config bin文件夹中的WebUI文件,但我不太确定,因为我在另一台手动更改的网络服务器上工作默认的App.ConfigWeb.Config文件,并且网站的根.dll.config目录中没有bin个文件。

任何人都知道如何使这个工作?

更新

以下示例:

DAL代码库项目App.Config

<configuration>
    <configSections>
 </configSections>
    <connectionStrings>
  <add name="DAL.Properties.Settings.DefaultConnection" connectionString="Data Source=(local);Initial Catalog=MyDB;Integrated Security=True;" />
 </connectionStrings>
</configuration>

Web.Config项目

WebUI的一部分
  <connectionStrings>
    <add name="WebUI.Properties.Settings.DefaultConnection" connectionString="Data Source=(local);Initial Catalog=MyDB;Integrated Security=True;" />
  </connectionStrings>

我为每个项目使用了Settings.settings文件。

如何将App.Config连接合并到我的Web.Config中,以便在发布期间进行转换?最好是我希望它在发布到网络时只使用一个连接。

如果我正确地设置了DAL,那么app.config引用的项目就可以在Web应用程序上运行(这对我来说只有一些意义,因为它引用了.dll)。

DAL.Properties.Settings.DefaultConnection这个web.config连接添加到我的DAL会替换{{1}}正在使用的连接吗?

1 个答案:

答案 0 :(得分:1)

Web应用程序的所有设置都来自web.config文件 - app.config将不会与Web应用程序一起使用或部署。最有可能的是,那个配置是​​因为你正在使用实体框架,而EDMX功能存储它的连接字符串。如果你把连接字符串放在web.config中(并使用适当的配置转换),你应该很好。