我有一個使用第三方activeX控件的ASP.NET網站。我必須將一些參數傳遞給HTML頁面中的OBJECT標籤。如果我硬編碼這些參數到HTML一切正常。如何閱讀web.config HTML標記中的APP關鍵設置
我想通過應用設置「鍵/值」對將參數放置在我的web.config中。
我的問題是我無法讀取HTML標記中的應用程序鍵設置,以成功傳遞它們作爲參數。我可以從後面的服務器端代碼讀取它們。
在客戶端HTML標記中讀取這些設置的正確方法是什麼?
謝謝
我有一個使用第三方activeX控件的ASP.NET網站。我必須將一些參數傳遞給HTML頁面中的OBJECT標籤。如果我硬編碼這些參數到HTML一切正常。如何閱讀web.config HTML標記中的APP關鍵設置
我想通過應用設置「鍵/值」對將參數放置在我的web.config中。
我的問題是我無法讀取HTML標記中的應用程序鍵設置,以成功傳遞它們作爲參數。我可以從後面的服務器端代碼讀取它們。
在客戶端HTML標記中讀取這些設置的正確方法是什麼?
謝謝
除了使用<%=ConfigurationManager.AppSettings["MyAttribute"]%>
,正如其他人所指出的,您還可以使用expression builders。語法有點不同。取而代之的<%=...%>
使用<%$ AppSettings: MyAttribute %>
,就像這樣:
<object id="myObjectID attr="<%$ AppSettings: MyAttribute %>" ...>
如果你只是直接傾倒的的appSettings值轉換成靜態HTML(因爲我相信你在這個例子中),這兩種方法都是所有的實際目的是相同的。
是什麼樣的表達式生成器不錯,不過,是你可以用它們來聲明分配的appSettings值Web控件的屬性,有些東西你不能與<%=...%>
語法做。也就是說,表達式生成器,你可以這樣做:
<asp:Label runat="server" ... Text="<%$ AppSettings: MyAttribute %>" />
雖然你可以不做:
<asp:Label runat="server" ... Text="<%=ConfigurationManager.AppSettings["MyAttribute"]%>" />
我建議你在運行時從服務器動態生成OBJECT標記。這樣你可以注入你從web.config文件讀取的任何參數。
您可以在您的ASPX頁面中使用ConfigurationManager
。然後,您可以添加在你OBJECT
代碼參數:
的Web.Config
</configuration>
<appSettings>
<add key="Setting" value="Value"/>
<appSettings>
</configuration>
ASPX
<object>
<param name="Setting" value="<%= System.Configuration.ConfigurationManager.AppSettings["Setting"] %>" />
</object>
您有幾種選擇。如果您在runat="server"
屬性添加到您的對象標記,你可以使用它的ID從您的代碼隱藏訪問它,並添加屬性,這些屬性的方法:
myObjectID.Attributes.Add("attrName", "value")
如果你不想這樣做,你可以使用內嵌文字:
<object id="myObjectID attr="<%= ConfigurationManager.AppSettings("MyAttribute") %>" ...>
無論哪種方式應該完成工作。
下面的代碼:
<%$ AppSettings: MyAttribute %>
是不一般的兼容HTML標記和JavaScript功能!這對asp標籤很有用。
而
<%=ConfigurationManager.AppSettings("MyAttribute")%>
真的在一般的HTML標記的工作。
所以
<%=ConfigurationManager.AppSettings("MyAttribute")%>
是我的建議!
像這樣使用它'<%= ConfigurationManager.AppSettings(「MyAttribute」)%>'會給出錯誤說明,不能使用AppSettings作爲方法。所以,像這樣使用它。 '<(%)= ConfigurationManager.AppSettings [ 「MyAttribute」]%>' – 2017-11-22 05:21:38