ASP.NET 學習筆記之二 建立 ASP.NET 應用程式
一、ASP.NET設定檔的特點
1) 配置資訊儲存在基於 XML 的文字檔中。
2) 多個設定檔(名稱都是 Web.config)可以出現在 ASP.NET Web 應用程式伺服器上的多個目錄中。每個 Web.config 檔案都將配置設定應用於它自己的目錄和它下面的所有子目錄。子目錄中的設定檔可以提供除從父目錄繼承的配置資訊以外的配置資訊,子目錄配置設定可以重寫或修改父目錄中定義的設定。
名為 systemroot/Microsoft.NET/Framework/versionNumber/CONFIG/Machine.config 的根設定檔提供整個 Web 服務器的 ASP.NET 配置設定。
3) 在運行時,ASP.NET 使用分層虛擬目錄結構中 Web.config 檔案提供的配置資訊為每個唯一的 URL 資源計算一組配置設定。然後緩衝結果配置設定,以供所有後面的對資源的請求使用。請注意,繼承是由傳入請求路徑 (URL) 定義的,而不是到磁碟上資源的檔案系統路徑(實體路徑)定義的。
4) ASP.NET 檢測對設定檔的更改並自動將新配置設定應用於受該更改影響的 Web 資源。不需要重新啟動伺服器讓更改生效。只要階層中的設定檔被更改,就將自動重新計算並重新緩衝分層配置設定。<processModel> 節例外。
5) ASP.NET 配置系統是可以擴充的。您可以定義新配置參數並編寫配置節處理常式以對它們進行處理。動態改變更配置置。
6) ASP.NET 通過配置 Internet 資訊服務 (IIS) 防止對設定檔的直接瀏覽器訪問來保護設定檔不受外部存取。向任何試圖直接請求設定檔的瀏覽器返回 HTTP 訪問錯誤 403(禁止)。
二、ASP.NET 設定檔格式
1) 命名
標記或屬性 Camel 大小寫形式 如 appSettings
屬性值 Pascal 大小寫形式 如 AppSettings
2) 格式
A) 所有配置資訊在:<configuration> 和 </configuration> 之間
B) 包含兩個主地區:配置節處理常式聲明地區和配置節設定地區
C) 配置節處理常式聲明地區:在設定檔頂部 <configSections> 和 </configSections> 標記之間,<section>標記中每個聲明都提供特定資料集的節名稱和處理該資料集的基礎類名稱。
D) 配置節設定地區位於configSections之後包含實際的配置設定
E) 將配置好的檔案放在伺服器的根 Machine.config 檔案中或包含 Web 應用程式檔案的虛擬目錄的 Web.config 檔案中。子目錄中的設定檔自動繼承父目錄中聲明的配置處理常式。
F) ASP.NET 設定架構
<configuration>
<location>
<system.web>
<authentication>
<forms>
<credentials>
<passport>
<authorization>
<allow>
<deny>
<browserCaps>
<result>
<use>
<filter>
<case>
<clientTarget>
<add>
<remove>
<clear>
<compilation>
<compilers>
<compiler>
<assemblies>
<add>
<remove>
<clear>
<customErrors>
<error>
<globalization>
<httpHandlers>
<add>
<remove>
<clear>
<httpModules>
<add>
<remove>
<clear>
<httpRuntime>
<identity>
<machineKey>
<pages>
<processModel>
<securityPolicy>
<trustLevel>
<sessionState>
<trace>
<trust>
<webServices>
<protocols>
<add>
<remove>
<clear>
<serviceDescriptionFormatExtensionTypes>
<add>
<remove>
<clear>
<soapExtensionTypes>
<add>
<clear>
<soapExtensionReflectorTypes>
<add>
<clear>
<soapExtensionImporterTypes>
<add>
<clear>
<WsdlHelpGenerator>
</webServices>
</system.web>
</location>
</configuration>
三、ASP.NET Web 應用程式的目錄結構
1) 建立目錄結構
c:/myWebApp
default.aspx
menu.ascx
service.asmx
web.config
global.asax
/bin 放置應用程式所用的DLL
myBizLogic.dll
/img
myImage.gif
2) 另外,如果編寫任何應用程式範圍的函數(包括 Application_Error 事件的處理常式),應將其放在 Global.asax 檔案中。
3) 部署 ASP.NET 應用程式非常簡單。只需將所建立的應用程式檔案從開發電腦複製到將承載應用程式的成品 Web 服務器。
4) 要部署希望在 Web 應用程式間共用的程式集(比如包含自訂 ASP.NET 伺服器控制項的程式集),應將其部署到全域組件快取。
5) asp.net結構
web用戶端
|
asp.net應用程式 <-> IIS
| |
|
.net Framework |
|
| |
Windows NT/2000 作業系統