我机器上的开发环境

时间:2017-06-21 12:55:43

标签: c# asp.net

我是ASP.NET和C#的新手,所以请耐心等待。

我开发了一个应用程序。我可以完全访问生产数据库。

从现在起我只使用了我的表,但现在我需要使用一个表,其中包含生产数据。

我创建了一个新数据库,并为Web.config文件添加了一个新的连接字符串。

因此生产连接字符串名称为:

Prod: myconnectiond
Dev:  devconnection

我的目标是在开发过程中使用devconnection。

我把它放到我的数据库连接方法中:

if (Environment.MachineName.ToLower() == "mymachine" && connectionName == "myconnection") {
    connectionName = "devconnection";
}

这是一种好的做法,还是更好的存在?

2 个答案:

答案 0 :(得分:2)

在最新版本的Visual Studio中,可以根据构建配置更改web.config配置。

创建web.config时,您将看到两个文件:

  • Web.Debug.Config
  • Web.Release.Config

将调试配置文件中的连接字符串更改为指向开发数据库,​​并将配置文件释放到指向生产数据库。

答案 1 :(得分:0)

我建议在你的代码中使用#IF预处理器,基本上它会像这样工作。

string ConnectionName = string.Empty;
#if DEBUG
ConnectionName = "devconnection";
#elif RELEASE
ConnectionName = "myconnectiond";
#endif

当你将你的构建配置设置为Debug(或开发)时,它将会编译你的代码,就好像这样:

string ConnectionName = string.Empty;
ConnectionName = "devconnection";

当你将它设置为Release时,它会像这样编译它:

string ConnectionName = string.Empty;
ConnectionName = "myconnectiond";

所有这些都不需要更改构建配置以外的任何内容。

您可以在此处找到更多信息:#if (C# Reference)