亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        ASP.NET Web應(yīng)用程序基本架構(gòu)

        2014-09-17 02:08:08羅海濤
        電腦知識與技術(shù) 2014年22期

        羅海濤

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

        關(guān)鍵詞:ASP.NET;架構(gòu);配置應(yīng)用程序

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

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

        1 ASP.NET Web應(yīng)用程序架構(gòu)

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

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

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

        1) bin文件夾

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

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

        2) Web.Config文件

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

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

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

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

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

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

        3) Global.asax文件

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

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

        2 結(jié)束語

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

        參考文獻(xiàn):

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

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

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

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

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

        亚洲中文字幕第一页免费| 亚洲乱码国产一区三区| 尤物99国产成人精品视频| 亚洲精品99久久久久久| 麻豆视频黄片在线免费观看| 久久精品成人一区二区三区| 老熟妇乱子伦av| 中文字幕乱码亚洲无线精品一区| 午夜亚洲精品视频网站| 国产人妖网站在线视频| 人妻少妇精品中文字幕av| 无码不卡高清毛片免费| 国产精品国产三级国产一地| 日韩精品一二三区乱码| 少妇av射精精品蜜桃专区| 美女被躁到高潮嗷嗷免费观看| 五码人妻少妇久久五码| 国产午夜精品视频在线观看| 色综合久久久无码中文字幕| 亚洲av无码一区二区三区系列| 国产成年无码久久久免费 | 爆乳无码AV国内| 亚洲一区二区三区福利久久蜜桃 | 黑人玩弄人妻中文在线| 人妻精品一区二区三区视频| 日本一区二区免费看片| 亚洲香蕉成人av网站在线观看| 激情97综合亚洲色婷婷五| 亚洲综合久久一本久道| 性色av色香蕉一区二区蜜桃| 国产色在线 | 亚洲| 欧美日韩精品福利在线观看| 亚洲免费av第一区第二区| 欧美日韩在线视频| 性久久久久久久| 特级毛片全部免费播放a一级| 少妇高潮精品在线观看| 日韩乱码人妻无码中文字幕久久| 日韩欧美第一页| 国产精品亚洲av一区二区三区 | 精品女同一区二区三区在线播放器|