1.配置文件層次分類 2.運行順序 配置文件的運行順序從大到小,從公有到私有:machine.config -> (公有)web.config -> (私有)web.config 當前配置文件決定了所在目錄及其子目錄的配置信息,並且子目錄下的配置信息覆蓋其父目錄的配置,多個web.config文件時
1.配置文件層次分類
- Machine.config: 對.netframework整體的配置
- web.config(framework目錄下): 對所有項目所公有的應用程式配置
- web.config(應用程式下): 對當前應用程式的配置(項目目錄中常見的)
2.運行順序
配置文件的運行順序從大到小,從公有到私有:machine.config -> (公有)web.config -> (私有)web.config
當前配置文件決定了所在目錄及其子目錄的配置信息,並且子目錄下的配置信息覆蓋其父目錄的配置,多個web.config文件時,以最近的一個web.config配置為準。
3.常用方法與問題分享
1. MVC自定義路由無法訪問
先給大家分享一個在MVC開發中遇到的問題,可能很多童鞋都有遇到過,就是自定義路由無法訪問:
解決辦法(添加如下配置):
<system.webServer>
<!--允許訪問自定義路由的路徑-->
<modules runAllManagedModulesForAllRequests="true">
<remove name="FormsAuthenticationModule" />
</modules>
</system.webServer>
2. 引用外部配置文件進行擴展
比如我們有一個外部配置文件My.Config,起內容如下:
<?xml version="1.0"?>
<appSettings>
<!--單頁可提交數據量-->
<add key="aspnet:MaxHttpCollectionKeys" value="5000" />
<!--單頁顯示數據行數-->
<add key="PageSize" value="20"/>
<!--是否發送簡訊提醒 1發送 0不發送-->
<add key="sendMsg" value="1"/>
<add key="ClientID" value="1065902100656"/>
</appSettings>
引用方法:在web.config中:<appSettings configSource="My.config"/>
3.自定義HttpModule和Httphandler的使用
對於寫好的自定義HttpModule和Httphandler,我們需要進行配置才會使我們寫好的代碼開始工作,比如自定義了一個MyHttpModule.cs,需要加如下配置才會生效:
<!--IIS6或者IIS7經典模式-->
<system.web>
<httpModules>
<add name="mymodule" type="命名空間.MyHttpModule"/>
</httpModules>
</system.web>
<!--IIS7集成模式-->
<system.webServer>
<modules>
<add name="mymodule" type="命名空間.MyHttpModule"/>
</modules>
</system.webServer>
4.配置文件節點說明
根結點:<configuration>
子節點:
- <appSettings>節點:主要用來存儲應用程式的一些配置信息,通過Key獲取Value<appSettings>
<add key="send" value="0"/>
</appSettings>
2. <connectionStrings>節點:主要用於配置資料庫連接,方便調整資料庫連接信息 <connectionStrings>
<!--SQL Server資料庫配置-->
<add name="ConnectionString1" connectionString="Data Source=127.0.0.1;Initial Catalog=AspNetStudy;User ID=sa;Password=12"/>
</connectionStrings>
3. <compilation>節點:編譯設置。預設的debug屬性為“true”,即允許調試,在這種情況下會影響網站的性能,所以在網站上線之後應將其設為“false”。<compilation debug="true" targetFramework="4.5" />
4. <customErrors>節點:用於定義自定義錯誤信息<customErrors mode="On"/>defaultRedirect說明:表示應用程式發生錯誤時重定向到的預設URLMode 說明:
On:表示在本地和遠程用戶都會看到自定義錯誤信息。
Off:禁用自定義錯誤信息,本地和遠程用戶都會看到詳細的錯誤信息。
RemoteOnly:表示本地用戶將看到詳細錯誤信息,而遠程用戶將會看到自定義錯誤信息。
web.config是asp.net應用程式中一個很重要的配置文件,本文介紹了一些比較常用基本節點,童鞋們可以自己去查閱更多的資料進行深入瞭解。
給大家推薦一個技術類公眾號: