可能重复:
How to check in ASP.NET MVC View if site is running on localhost or 127.0.0.1
我在web.config中使用两个连接字符串条目,我使用HttpContext.Current.Request.UserHostAddress在部署和开发环境之间进行检测:
public static SqlConnection GetSqlConnection()
{
if (HttpContext.Current.Request.UserHostAddress != "127.0.0.1")
...
else
...
}
但问题在这里,有时HttpContext.Current为null并引发异常(即:当在asp.net中从global.asax中修改计划任务时)。 对此有什么一般解决方案吗?
答案 0 :(得分:4)
您应该在环境之间更改配置文件中的连接字符串。这就是为什么它们首先存储在配置文件中,所以你不必这样做。
我更喜欢将连接字符串放在单独的文件中,而不是根本不进行部署。对于特定于环境的其他配置也可以这样做。另一种方法是使用XML转换作为构建作业的一部分,以在部署到生产环境时更改连接字符串。