同桌上课用手指进去了好爽_欧美丰满熟妇xxⅹⅹ性大i_成人av天天日天天拍拍_猛男gay帅男gay男男同志_欧美va天堂在线观看_人妻无码av中文系列三里桃花_亚欧免费无码在线观看_久久久精品国产亚洲av水_日韩在线免费看污污污_2021无码专区人妻系列日韩

首頁 優(yōu)化推廣 .net中Web.config文件的基本原理及相關(guān)設(shè)置

.net中Web.config文件的基本原理及相關(guān)設(shè)置

來源: | 時(shí)間:2010/12/27 12:57:02 |

11.7  使用web.config配置文件
Web配置文件web.config是Web 應(yīng)用程序的數(shù)據(jù)設(shè)定文件,它是一份 XML 文件,內(nèi)含 Web 應(yīng)用程序相關(guān)設(shè)定的 XML 標(biāo)記,可以用來簡化 ASP.NET 應(yīng)用程序的相關(guān)設(shè)定。
11.7.1  Web配置文件的基礎(chǔ)
Web 配置文件web.config位于 Web 應(yīng)用程序的任何目錄中,子目錄如果沒有 web.config 文件,就是繼承父目錄 web.config 文件的相關(guān)設(shè)定;如果子目錄有 web.config 文件,就會覆蓋父目錄 web.config 文件的相關(guān)設(shè)定。
.NET Framework 根配置文件名稱是 Machine.config,存儲在 Windows 文件夾下Microsoft.NET\Framework\<version>\CONFIG,整個(gè) Web 服務(wù)器所有 Web 應(yīng)用程序的設(shè)定都是繼承此配置文件,如果需要更改設(shè)定,可使用 web.config 文件在各目錄中覆蓋相關(guān)設(shè)定。
Web 配置文件是一份 XML 文件,在 XML 標(biāo)記的屬性就是設(shè)定值,標(biāo)記名稱和屬性值格式是字符串,第 1 個(gè)開頭字母是小寫,之后每一字頭是大寫,例如<appSettings>。Web 配置文件的范例如下所示。
<configuration>
  <appSettings>
    <add key="dbType" value="Access Database"/>
  </appSettings>
  <connectionStrings>
    <add name="provider"
         connectionString="Microsoft.Jet.OLEDB.4.0;"/>
    <add name="database"
         connectionString="/Ch11/Products.mdb"/>
  </connectionStrings>
  <system.web>
    <sessionState cookieless="false" timeout="10"/>
    <globalization
       fileEncoding="gb2312"
       requestEncoding=" gb2312"
       responseEncoding=" gb2312"
       culture="zh-CN"/>
    <compilation defaultLanguage="VB" debug="true"/>
    <customErrors mode="RemoteOnly"/>
  </system.web>
</configuration>
上述 Web 配置文件的根標(biāo)記是<configuration>,其子標(biāo)記<appSettings>、<connectionStrings>和<system.web>是各設(shè)定區(qū)段。在<system.web>下的設(shè)定區(qū)段屬于ASP.NET相關(guān)設(shè)定。常用設(shè)定區(qū)段標(biāo)記說明如表11-9所示。
表11-9  常用設(shè)定區(qū)段標(biāo)記
設(shè) 定 區(qū) 段
 說    明
 
<anonymousIdentification>
 控制 Web 應(yīng)用程序的匿名用戶,詳細(xì)說明參閱第 16 章
 
<authentication>
 設(shè)定 ASP.NET 驗(yàn)證方式,參閱第 13 章
 
<authorization>
 設(shè)定 ASP.NET 用戶授權(quán),參閱第 13 章
 
<browserCaps>
 設(shè)定瀏覽程序兼容組件 HttpBrowserCapabilities
 
<compilation>
 設(shè)定 ASP.NET 應(yīng)用程序的編譯方式
 
<customErrors>
 設(shè)定 ASP.NET 應(yīng)用程序的自訂錯(cuò)誤處理
 
<globalization>
 關(guān)于 ASP.NET 應(yīng)用程序的全球化設(shè)定,也就是本地化設(shè)定
 
<httpHandlers>
 設(shè)定 HTTP 處理是對應(yīng)到 URL 請求的 IHttpHandler 類
 
<httpModules>
 創(chuàng)建、刪除或清除 ASP.NET 應(yīng)用程序的 HTTP 模塊
 
<httpRuntime>
 ASP.NET 的 HTTP 執(zhí)行期相關(guān)設(shè)定
 
<identity>
 設(shè)定 ASP.NET 應(yīng)用程序的用戶識別是使用服務(wù)器端用戶賬號的權(quán)限(impersonate 屬性),或指定的用戶賬號(userName 和 password 屬性)
 
<machineKey>
 設(shè)定在使用窗體基礎(chǔ)驗(yàn)證的 Cookie 數(shù)據(jù)時(shí),用來加碼和解碼的金鑰值
 
<membership>
 設(shè)定 ASP.NET 的 Membership 機(jī)制,參閱第 13 章
 
<pages>
 設(shè)定 ASP.NET 程序的相關(guān)設(shè)定,即 Page 指引命令的屬性
 
<profile>
 設(shè)定個(gè)人化信息的 Porfile 對象,詳細(xì)說明參閱第 14 章
 
<roles>
 設(shè)定 ASP.NET 的角色管理,詳細(xì)說明參閱第 13 章
 
<sessionState>
 設(shè)定 ASP.NET 應(yīng)用程序的 Session 狀態(tài) HttpModule
 

(續(xù)表)  
設(shè) 定 區(qū) 段
 說    明
 
<siteMap>
 設(shè)定 ASP.NET 網(wǎng)站導(dǎo)覽系統(tǒng),詳細(xì)說明參閱第 12 章
 
<trace>
 ASP.NET 應(yīng)用程序的除錯(cuò)功能,可以設(shè)定是否追蹤應(yīng)用程序的執(zhí)行
 
<webParts>
 設(shè)定ASP.NET應(yīng)用程序的網(wǎng)頁組件,詳細(xì)說明參閱第18章
 
<webServices>
 設(shè)定 ASP.NET 的 Web 服務(wù),詳細(xì)說明參閱第 18 章
 

11.7.2  appSetting與connectionStrings區(qū)段的參數(shù)和連接字符串
在 Web 配置文件的 <appSettings> 區(qū)段可以創(chuàng)建 ASP.NET 程序所需的參數(shù),ASP.NET 2.0 新增 <connectionStrings> 區(qū)段,可以指定數(shù)據(jù)庫連接字符串。
1. Web配置文件web.config的內(nèi)容
在web.config文件<configuration>標(biāo)記的子標(biāo)記<appSettings> 和 <connectionStrings> 區(qū)段中,可以創(chuàng)建參數(shù)和數(shù)據(jù)庫連接字符串,如下所示。
<configuration>
  <appSettings>
    <add key="dbType" value="Access Database"/>
  </appSettings>
  <connectionStrings>
    <add name="provider"
         connectionString="Microsoft.Jet.OLEDB.4.0;"/>
    <add name="database"
         connectionString="/Ch11/Products.mdb"/>
  </connectionStrings>
  <system.web>
    ………
  </system.web>
</configuration>
上述 <appSettings> 標(biāo)記的子標(biāo)記是創(chuàng)建參數(shù),每一個(gè) <add> 標(biāo)記可以創(chuàng)建一個(gè)參數(shù),屬性 key 是參數(shù)名稱,value 是參數(shù)值。
在 <connectionStrings> 標(biāo)記的 <add> 子標(biāo)記也可以創(chuàng)建連接字符串,屬性 name 是名稱,connectionString 屬性是連接字符串內(nèi)容。
2. Conifguration API的基礎(chǔ)
ASP.NET 2.0 的 Configuration API 可以存取 web.config 和 machine.config 配置文件的設(shè)定數(shù)據(jù)。在ASP.NET 程序中是使用 System.Web.Configuration 名稱空間的 WebConfigurationManager 類來存取相關(guān)設(shè)定。首先導(dǎo)入所需的名稱空間,如下所示。
<%@ Import NameSpace="System.Web.Configuration" %>
上述 Import命令導(dǎo)入 System.Web.Configuration 名稱空間,接著就可以獲取 <appSettings> 區(qū)段創(chuàng)建的參數(shù),如下所示。
Dim dbType As String = WebConfigurationManager.AppSettings("dbType")
上述程序代碼使用AppSettings屬性獲取指定參數(shù),使用的是<add>標(biāo)記的key 屬性。同樣可以獲取<connectionStrings>區(qū)段的數(shù)據(jù)庫連接字符串,如下所示。
Dim pd, db As String
pd = WebConfigurationManager.ConnectionStrings( _
              "provider").ConnectionString
db = WebConfigurationManager.ConnectionStrings( _
              "database").ConnectionString
上述程序代碼使用 ConnectionStrings 屬性獲取參數(shù) provider 和 database 的值,即 <add> 標(biāo)記的 name 屬性。完整 ASP.NET 程序范例是 Ch11-7-2.aspx,其執(zhí)行結(jié)果使用表格顯示數(shù)據(jù)表記錄,如圖11-12所示。

圖11-12  Ch11-7-2.aspx運(yùn)行結(jié)果
上圖的Access Database是<appSettings>區(qū)段的應(yīng)用程序參數(shù),數(shù)據(jù)表是使用 GridView控件來顯示記錄數(shù)據(jù),數(shù)據(jù)庫連接字符串是定義在web.config 文件。
11.7.3  在sessionState區(qū)段設(shè)定Session狀態(tài)
ASP.NET的Session狀態(tài)管理擁有擴(kuò)充性,可以在web.config文件的 <sessionState>區(qū)段設(shè)定Session狀態(tài)管理,它屬于<system.web>

服務(wù)熱線

153 8323 9821

功能和特性

價(jià)格和優(yōu)惠

網(wǎng)站和維護(hù)

推廣和優(yōu)化

微信服務(wù)號