国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

ASP.NET Web應用程序基本架構

2014-09-17 02:08:08羅海濤
電腦知識與技術 2014年22期
關鍵詞:架構

羅海濤

摘要:.NET框架是微軟提出并開發(fā)的用于網(wǎng)絡程序設計的環(huán)境,基于Windows操作系統(tǒng)。該文分析研究了基于.NET框架的Web應用程序的架構,列舉了幾個特殊而且重要的基本元素,并附示例說明其使用方法。熟悉并應用這些元素,可以構成完整的Web應用程序,提高應用程序的效率和安全性。

關鍵詞:ASP.NET;架構;配置應用程序

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)22-5225-04

隨著Internet的發(fā)展和深入普及,基于Internet的Web應用得到了快速發(fā)展,實現(xiàn)的功能也越來越復雜。ASP.NET是微軟提出的.NET框架的一部分,它是一種以.NET框架為基礎開發(fā)WEB應用程序的全新模式,其底層用類實現(xiàn),是一種面向對象的實現(xiàn)方法。微軟給.NET下的定義為:“.NET代表一個集合,一個環(huán)境,一個可以作為平臺支持下一代Internet的可編程結構?!盇SP.NET又稱為ASP+,是微軟在ASP3.0的基礎上推出的動態(tài)網(wǎng)頁設計語言,但它不是ASP的簡單升級,而是微軟提出的.NET框架的一部分,它本身也只是一個框架。在這個框架下可以利用VB.NET、C#、C++或JScript.NET等程序語言。

1 ASP.NET Web應用程序架構

所謂Web應用程序,可以理解為通常所說的網(wǎng)站,在.NET環(huán)境下,實際上是添加了虛擬目錄的文件夾。.NET通常需要Windows Server作為服務器操作系統(tǒng),該操作系統(tǒng)一般自動安裝IIS服務器。建立一個網(wǎng)站時,通常建立一個專門的文件夾,把所有涉及到的文件存入該文件夾,并通過IIS給這個文件夾設置虛擬目錄。

例如,在D盤的文件夾“website1”是一個網(wǎng)站,通過IIS為其設置虛擬目錄名為“w1”,則Internet用戶可以在瀏覽器地址欄輸入http://(計算機IP地址)/w1,訪問到該網(wǎng)站。這里,“w1”又稱為該Web應用程序/網(wǎng)站的根目錄。網(wǎng)站一般有一個首頁,通過首頁鏈接到其他頁面,首頁一般命名為default.aspx或者index.aspx,也可以在IIS中自行設置。

Web應用程序根目錄下除了各個頁面文件,數(shù)據(jù)庫及其他相關文件和文件夾之外,還有一些重要的、特殊的文件夾和文件,包括bin文件夾、Web.Config文件和Global.asax文件。

1) bin文件夾

bin文件夾存放所有的業(yè)務對象文件(.dll),該文件夾位于應用程序根目錄。所謂業(yè)務對象,其實是一個類,與系統(tǒng)提供的類不同,業(yè)務對象是用戶根據(jù)需要自己開發(fā)的類。業(yè)務對象中的類可以不包含界面元素,也可以包含界面元素,后者又稱為自定義控件。 使用業(yè)務對象的目的是實現(xiàn)封裝功能,另外還可以加快網(wǎng)頁的訪問速度,因為業(yè)務對象文件都經(jīng)過編譯。

使用業(yè)務對象的步驟如下:首先建立業(yè)務對象源程序文件,如果用VB.NET,則文件擴展名為“vb”,如果使用C#,則文件擴展名為“cs”。在源文件中,需要定義NameSpace,在NameSpace中定義類及其屬性和方法;其次,在DOS窗口,把源程序文件編譯為DLL文件,如果是VB.NET編寫的源程序文件,用微軟的vbc進行編譯,如果是C#編寫的源程序文件,用微軟的csc進行編譯;第三步,將編譯好的DLL文件部署到bin文件夾。其中第三步也可以省略,而是在第二步編譯時直接部署到bin文件夾。以后,就可以像使用.NET內置類一樣,在任何頁面中使用業(yè)務對象中定義的類。如果業(yè)務對象需要更新,只需要更新相應的源程序文件,重新編譯并部署到bin文件夾即可,無須重啟服務器。

2) Web.Config文件

Web.Config文件是Web應用程序重要的配置文件,用來存放一些常量(如數(shù)據(jù)庫連接字符串)和用戶訪問權限設置等。

.NET框架提供了一個豐富又靈活的配置系統(tǒng),使得應用程序開發(fā)及管理人員能夠在整個應用程序、站點和計算機中定義和使用可擴展的配置數(shù)據(jù)。對于安裝了.NET框架的Web 服務器,都有一個名稱為Machine.config的特殊配置文件,它為整個Web 服務器提供配置設置。而每一個ASP.NET Web應用程序都可以有自己的名稱為Web.config的配置文件。

默認情況下,Visual Studio.NET為每個Web 應用程序自動創(chuàng)建一個位于Web 站點根目錄的配置文件Web.config,它包含著適用于當前站點的有關配置及安全設置。Web.config配置文件是層次式的,可以在應用程序的根目錄和各級子目錄下建立該文件,每一個web.Config文件在所在文件夾及其子文件夾下起作用,每一個web.Config文件繼承父文件夾的web.Config文件的設置,并覆蓋相同的選項,所有的應用程序都繼承machine.config文件設置。在Web.config中所作的設置將覆蓋Machine.config中的相應設置。而對于在Web.config中沒有進行設置的屬性,其取值將繼承Machine.config中屬性的設置。

當用戶請求一個ASPX頁面時,ASP.NET將應用該頁面文件所在目錄的Web.config文件中指定的訪問規(guī)則和配置,如果不能從該頁面文件所在的目錄找到Web.config文件,或不能從中找到適用的規(guī)則,那么它就尋找該頁面文件所在目錄的父目錄對應的Web.config文件。如果一直找不到適用的規(guī)則,則如此繼續(xù)尋找下去,直到到達前面提到的Machine.config文件。默認情況下,Machine.config文件準許所有用戶對網(wǎng)站資源的訪問。一旦配置文件被更改,ASP.NET將檢測到新的配置并自動使它起作用,無需重新啟動服務器。另外,ASP.NET通過配置IIS來保護各級Web.config配置文件,拒絕瀏覽器直接URL訪問,因此,即使知道該文件所在位置,也不能從遠程用瀏覽器瀏覽或下載,從而保證了應用程序的安全性。

Machine.config和Web.config都是基于XML的文本文件,用特定的XML標記表示配置信息。配置文件具有如下3個特征:第一,有一個唯一的根元素,可以包含所有其他的元素,machine.config和web.config的根元素是;第二,標記區(qū)分大小寫,因此應該區(qū)別對待;第三,任何屬性、關鍵詞或值應該封閉在雙引號內,如:。

例如,將數(shù)據(jù)庫連接字符串保存在Web.config中,采用如下配置:

3) Global.asax文件

Global.asax文件通常用于存放Session對象和Application對象事件過程。每個應用程序可以有一個且只能有一個Global.asax文件,該文件必須放在應用程序根目錄下。其中事件過程Application_OnStart(Sender As Object, E As EventArgs),是當應用程序啟動后第一個客戶訪問時觸發(fā);事件過程Application_OnEnd(Sender As Object, E As EventArgs),當應用程序停止時觸發(fā);事件過程Session_OnStart(Sender As Object, E As EventArgs),當每一個客戶登錄時觸發(fā);事件過程Session_OnEnd(Sender As Object, E As EventArgs),當每一個客戶超過會話時間(默認為20分鐘)沒有和服務器交互時觸發(fā),或者客戶關閉瀏覽器到會話時間結束時觸發(fā);事件過程Application_OnBeginRequest(Sender As Object, E As EventArgs),當每一個客戶請求訪問每一個ASP.NET文件時觸發(fā);事件過程Application_OnEndRequest(Sender As Object, E As EventArgs),當每一個客戶請求訪問每一個ASP.NET文件結束時觸發(fā)。

例如,可以在Global.asax文件中定義上述幾個事件過程,以記錄網(wǎng)站日志,在日志中記錄系統(tǒng)啟動時間,啟動后每個來訪用戶的IP地址、訪問時間、退出時間和系統(tǒng)的關閉時間等信息,代碼形式如下:

2 結束語

.NET框架是微軟開發(fā)的用于網(wǎng)絡編程的環(huán)境,功能強大,編程簡單,采用面向對象的設計方法,進行程序開發(fā)和設計。而Visual Studio.NET集成了.NET框架,提供了可視環(huán)境下進行網(wǎng)絡編程的功能,開發(fā)面向對象的Web應用程序更加方便、快捷。但是,基于.NET框架的WEB應用程序,其基本框架沒有改變,除了用戶自己開發(fā)的各個頁面文件,數(shù)據(jù)庫及其有關文件之外,重要而且特殊的文件夾bin、配置文件Web.Config和Global.asax文件,仍然是應用程序的重要組成架構,熟悉并應用這些文件和文件夾,可以提高整個應用程序的完整性和訪問速度,提高整個應用程序的安全性。

參考文獻:

[1] .NET Framework SDK Documentation[Z].

[2] Meier J D,Alex Mackman,Michael Dunner.構建安全的ASP.NET應用程序[EB/OL].http://www.microsoft.com/china/msdn/archives/library/SecurityGuide/default.asp.

[3] 張永勝.ASP.NET的身份驗證及授權機制應用研究[J].計算機應用,2004(8).

[4] Marshall D. NET 安全編程[M].余波,張立浩,譯.北京:清華大學出版社,2003.

[5] 尚俊杰.ASP.NET程序設計[M].北京:清華大學出版社,2004.

猜你喜歡
架構
基于FPGA的RNN硬件加速架構
功能架構在電子電氣架構開發(fā)中的應用和實踐
汽車工程(2021年12期)2021-03-08 02:34:30
LSN DCI EVPN VxLAN組網(wǎng)架構研究及實現(xiàn)
電信科學(2017年6期)2017-07-01 15:45:17
一種基于FPGA+ARM架構的μPMU實現(xiàn)
南靖县| 凤庆县| 易门县| 达日县| 碌曲县| 嘉禾县| 仙居县| 锡林郭勒盟| 达拉特旗| 定安县| 碌曲县| 香格里拉县| 永定县| 安远县| 青州市| 荆州市| 临朐县| 崇明县| 海伦市| 容城县| 青海省| 固原市| 定陶县| 洪洞县| 潼关县| 金塔县| 弥渡县| 嫩江县| 田林县| 新宾| 泉州市| 惠水县| 双辽市| 全州县| 盐池县| 锡林浩特市| 仁化县| 鹤庆县| 万山特区| 措勤县| 华宁县|