表達式語法<%$...%>的完整語法如下:
<%$ expressionPrefix:expressionValue %>
藉助表達式語法<%$...%>,我們可以從配置文件(Web.Config)中取得連接字符串和應用程序設置,或從資源文件(.resx或.resource)中取得特定項的設置值。
一、取得連接字符串
當我們設計數據庫訪問網頁時,會使用SqlDataSource等數據源控件來綁定到數據庫,而這時就必要要將正確的連接字符串賦給他的ConnecionString屬性。
<connectionStrings>
<add name="ConStr"
connectionString="Data Source=(local)\SQLExpress;Initial Catalog=TestData;Integrated Security=True"
providerName="System.Data.SqlClient"/>
</connectionStrings>
以上是Web.Config的部分內容,包含了名爲ConStr的連接字符串。如下賦給SqlDataSource控件
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConStr %>"
SelectCommand="SELECT ID, Name, Sex, Dept FROM [emp]"></asp:SqlDataSource>
如果要在服務器端程序代碼中取得配置文件Web.config中的連接字符串。可使用System.Web.Configuration命名空間中的WebConfigurationManager類
WebConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
二、取得應用程序設置
我們經常會在配置文件Web.Config的配置項目appSetting中保存一些自定義的應用程序設置,比如,文件路徑,Web服務的URL,版本信息等。我們可以藉助表達式語法取得這些自定義信息。
<appSettings>
<add key="CopyRight" value="(c)Copyright 2008 我的公司"/>
<add key="Application Name" value="我的網站"/>
<add key="Studio Name" value="我的團隊"/>
</appSettings>
<asp:Literal ID="Literal1" runat="server" Text="<%$ AppSettings: copyright %>"></asp:Literal>
<hr />
<asp:Literal ID="Literal2" runat="server" Text="<%$ AppSettings: Application Name %>"></asp:Literal>
<hr />
<asp:Literal ID="Literal3" runat="server" Text="<%$ AppSettings: Studio Name %>"></asp:Literal>
三、取得資源文件設置