【发布时间】:2010-02-23 12:22:54
【问题描述】:
我的应用中有 3 个连接字符串:
<add name="DBConnectionString" connectionString=""/>
<add name="ADConnectionString" connectionString="" />
<add name="TestDBConnectionString" connectionString="" />
现在在我做的代码中:
public static string DefaultConnection
{
get
{
// this is used so that there will be no chance of modifing the original data when testing locally
if (HttpContext.Current.Server.MachineName == "xxx")
return ConfigurationManager.ConnectionStrings["TestDBConnectionString"].ConnectionString;
else
return ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;
}
}
这在后面的代码中有效,但是当我做普通的 SqlDataSource 然后我喜欢这样:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%# DBConnections.DefaultConnection %>" />
我得到:ConnectionString 属性尚未初始化。 我究竟做错了什么? AFAIK 这应该得到我想要的价值......
我不想在连接部分这样做,因为 我想确定我不会弄乱生产服务器,因为我在同一个网络中......我可以整个发布项目,但那是 waaaaaaaaaaaay 太多的工作。
【问题讨论】:
-
只是为了检查:您的 name="DBConnectionString" connectionString="" 中实际上有一个连接字符串?这些在您的 web.config 的哪个部分?
-
好吧... 1. 我不会给你看我的连接字符串 2. 这没关系
标签: c# asp.net web-config connection-string