我是ASP.NET和C#的新手,所以请耐心等待。
我开发了一个应用程序。我可以完全访问生产数据库。
从现在起我只使用了我的表,但现在我需要使用一个表,其中包含生产数据。
我创建了一个新数据库,并为Web.config
文件添加了一个新的连接字符串。
因此生产连接字符串名称为:
Prod: myconnectiond
Dev: devconnection
我的目标是在开发过程中使用devconnection。
我把它放到我的数据库连接方法中:
if (Environment.MachineName.ToLower() == "mymachine" && connectionName == "myconnection") {
connectionName = "devconnection";
}
这是一种好的做法,还是更好的存在?
答案 0 :(得分:2)
在最新版本的Visual Studio中,可以根据构建配置更改web.config配置。
创建web.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)