我在web.conf中设置了连接字符串
<appSettings>
<add key="DBHost" value="myserver.com"></add>
<add key="DBName" value="myDBName"></add>
<add key="DBLogin" value="myDBLogin"></add>
<add key="DBPassword" value="myDBPass"></add>
<!--DBTrustedConnection: true then Connection string will be used else user and password is required-->
<add key="DBTrustedConnection" value="true"></add>
<add key="DBConnectionString" value="Data source=.\sqlexpress; Initial Catalog=DQMF; Integrated Security=True"></add>
.....other settings
</appSettings>
这是我正在尝试使用的代码
<form id="form1" runat="server">
<% string con="";
if(System.Configuration.ConfigurationManager.AppSettings.Get("DBTrustedConnection").Equals("true"))
con = System.Configuration.ConfigurationManager.AppSettings.Get("DBConnectionString");
else {
string DBHost = System.Configuration.ConfigurationManager.AppSettings.Get("DBHost");
string DBName = System.Configuration.ConfigurationManager.AppSettings.Get("DBName");
string DBLogin = System.Configuration.ConfigurationManager.AppSettings.Get("DBLogin");
string DBPassword = System.Configuration.ConfigurationManager.AppSettings.Get("DBPassword");
con = "Data Source=" + DBHost + ";Initial Catalog=" + DBName + ";User ID=" + DBLogin + ";Password=" + DBPassword + ";";
}
%>
<asp:SqlDataSource runat="server" ConnectionString="<%=con %>??? How to use con variable here" SelectCommand="SELECT COMMAND" ID="SqlDataSource1"></asp:SqlDataSource>
这里的问题是我无法使用con变量。请帮助我或建议一些其他方式,因为我是asp的新手
答案 0 :(得分:1)
在Web.Config中,有一个标记,如果不存在,则在</appSettings>
之后添加它:
</appSettings>
<connectionStrings>
<add name="name" connectionString="Data source=.\sqlexpress; Initial Catalog=DQMF; Integrated Security=True"/>
</connectionStrings>
要获取连接字符串,请使用以下代码(在某些事件中使用Code Behind,如Page_Load):
protected void Page_Load(object sender, EventArgs e)
{
string connectionString =
System.Configuration.ConfigurationManager.ConnectionStrings["name"].ConnectionString;
if(!string.IsNullOrEmpty(connectionString))
{
//Use it here...
SqlDataSource1.ConnectionString = connectionString;
}
}
答案 1 :(得分:0)
将代码移到后面的代码中,然后将您的连接字符串传递给datasource