实时与开发连接字符串

时间:2013-07-29 16:50:49

标签: c# visual-studio-2010 connection-string

我们有一个开发数据库和一个生产数据库。我想要防止的是必须改变:

connectionString="Data Source=server;Initial Catalog=test;
connectionString="Data Source=server;Initial Catalog=live;

我们有两个地方部署网站。一个用于测试,一个用于实时。

是否有一种简单的方法可以阻止我们每次上传测试或直播时都必须更改连接字符串?

我们使用团队基础服务器,我不知道如何设置构建服务器或构建定义,以便在有任何内容时寻找简单的东西。

3 个答案:

答案 0 :(得分:6)

如果您正在开发ASP.NET应用程序,则可以使用web.config transforms轻松指定每个环境之间的差异。构建过程将为您要定位的任何环境生成适当的web.config

如果您正在构建桌面应用程序,我会调查Slow Cheetah,它允许您在任何您喜欢的xml文件上使用相同的web.config转换功能,包括app.config 。我们已经在我公司的许多项目中使用它来简化各种环境之间的部署过程。

答案 1 :(得分:3)

您可以使用web.config.release来提及您的发布模式配置。这些是VS2010及以上的一部分。您可以非常好地了解Scott Hanselman article here

这里需要注意的是,只要您publish your web site before deploying,就会发生从调试到发布的转换。

答案 2 :(得分:1)

找到设置持续集成构建的好教程。较新版本的TFS处理得非常好。

要掌握很多东西,但是值得付出努力。尝试MSDN文章,找到所有默认选项,它就不会那么糟糕。

启动并运行CI,您将知道如何处理这些web.config转换(这将解决您的直接问题)。但是通过设置构建过程,您会发现部署变得更加容易。