2015-08-20 69 views
1

我被要求使用web.config文件爲HTML表單創建視覺對比,以便將其與生產環境和開發環境區分開來。如何使用web.config文件更改CSS

我對ASP.NET的曝光非常有限。雖然我從昨天開始一直在研究web.config文件,但由於缺乏這項技術的經驗,我仍然認爲我無法提供一個可靠的解決方案。

如果這項工作能直接用HTML,CSS,PHP或JS,我可以做我自己來處理,但使用的web.config是一個要求。

的目標是創建一個明確無誤的視覺變化(比方說,淺綠背景)當用戶的發展形式。

已經有比賽中的一個CSS樣式表,所以我想改變就必須走內聯在HTML覆蓋外部樣式。

所以這裏的問題,如果它使任何意義:

如果這是在生產的web.config:<add key="CurEnv" value="Production"/>這是在開發中:<add key="CurEnv" value="Development"/>,我怎麼可以設置基於價值形式的背景顏色在配置文件中?

回答

4

這是我要做的事:

對於DEV,例如,我有我的appSettings以下重點:

<appSettings> 
    <add key="skin" value="skin-gray"/> 
    ... 
</appSettings> 

然後在我的母版頁(如果使用Web窗體)或我_Layout.cshtml(如果使用MVC),我有以下HTML:

<body class="@System.Configuration.ConfigurationManager.AppSettings["skin"]"> 

的WebForms的語法是:

<body class="<%=System.Configuration.ConfigurationManager.AppSettings["skin"]%>"> 

對於生產,我在appSettings部分有一個「skin-blue」設置,這樣,當我部署應用程序時,根據環境的不同,皮膚會自動更改。

我真正做到這一點自動,如使用Slow Cheetah

所以這取決於其配置選擇,以構建應用程序上,右側值用於構建過程的一部分。這是我變換Web.Production.Config

<appSettings> 
    <add key="skin" value="skin-blue" xdt:Transform="Replace" xdt:Locator="Match(key)"/> 
    </appSettings> 
相關問題