|
系列文章導(dǎo)航:
VS 2010 和 .NET 4.0 系列之《ASP.NET 4 中的SEO改進(jìn) 》篇
VS 2010 和 .NET 4.0 系列之《干凈的Web.Config文件 》篇
VS 2010 和 .NET 4.0 系列之《起始項(xiàng)目模板》篇
VS 2010 和 .NET 4.0 系列之《多定向支持》篇
VS 2010 和 .NET 4.0 系列之《多顯示器支持》篇
VS 2010 和 .NET 4.0 系列之《代碼優(yōu)化的Web開(kāi)發(fā)Profile》篇
VS 2010 和 .NET 4.0 系列之《ASP.NET, HTML, JavaScript 代碼片段支持》篇
VS 2010 和 .NET 4.0 系列之《自動(dòng)啟動(dòng)ASP.NET應(yīng)用》篇
VS 2010 和 .NET 4.0 系列之《在ASP.NET 4 Web Forms中實(shí)現(xiàn)URL導(dǎo)向》篇
VS 2010 和 .NET 4.0 系列之《在VS 2010中查詢和導(dǎo)航代碼》篇
VS 2010 和 .NET 4.0 系列之《VS 2010代碼智能提示的改進(jìn)》篇
VS 2010 和 .NET 4.0 系列之《添加引用對(duì)話框的改進(jìn)》篇
VS 2010 和 .NET 4.0 系列之《內(nèi)置圖表控件》篇
這是我針對(duì)即將發(fā)布的VS 2010 和 .NET 4所撰寫(xiě)的貼子系列的第一篇。
無(wú)可否認(rèn),今天的貼子所涉及的東西在ASP.NET 4.0中是個(gè)非常小的(但我還是認(rèn)為是個(gè)非常棒的)變動(dòng):干凈,簡(jiǎn)潔的web.config文件。
第一次在Visual Studio 2010中使用 文件->新項(xiàng)目 創(chuàng)建空白的ASP.NET 4.0 Web應(yīng)用時(shí)你就會(huì)看到這個(gè)改進(jìn),所以我覺(jué)得把這個(gè)東西做為我的系列的第一篇是非常恰當(dāng)?shù)摹?/p>
.NET 3.0 和 3.5中的Web.config文件
在最近幾個(gè)版本中,新ASP.NET項(xiàng)目中的web.config文件的大小一直在穩(wěn)步增長(zhǎng)。例如,Visual Studio 2008 SP1中加到新的web項(xiàng)目中的默認(rèn)web.config文件已有126行,所含的東西包羅萬(wàn)象,從標(biāo)識(shí)的定義到用于ASP.NET HTTP管道中的處理器和模塊的定義等等。
這個(gè)文件大小的增加是因?yàn)?NET 3.0 和 .NET 3.5用的是跟.NET 2.0一樣的CLR和machine.config配置文件,只不過(guò)是在安裝時(shí)加了或更新了框架中的程序集而已。為避免意外地覆蓋機(jī)器上原有的2.0 machine.config中定制設(shè)置的風(fēng)險(xiǎn),我們沒(méi)有在其中注冊(cè)隨.NET 3.0 和 .NET 3.5版本而來(lái)的新的ASP.NET功能帶來(lái)的標(biāo)識(shí)定義和處理器和模塊,而是選擇讓新的項(xiàng)目在應(yīng)用的局部web.config中注冊(cè)這些設(shè)置。這個(gè)做法比較安全,但也導(dǎo)致了web.config文件大小的增加,而且變到愈加復(fù)雜,讀起來(lái)也更困難。
.NET 4中的Web.config文件
.NET 4 包括了一個(gè)新的CLR版本,以及特定于.NET 4的新的machine.config文件(是與.NET 2, .NET 3 和 .NET 3.5中所用的machine.config文件并列安裝的)。
新的.NET 4 machine.config文件現(xiàn)在自動(dòng)注冊(cè)我們幾年來(lái)添加的所有的ASP.NET 標(biāo)識(shí)部分(section), 處理器和模塊,包括了對(duì)應(yīng)于下列功能的設(shè)置:
- ASP.NET AJAX
- ASP.NET 動(dòng)態(tài)數(shù)據(jù)
- ASP.NET 路徑選擇或?qū)?現(xiàn)在可為ASP.NET WebForms和ASP.NET MVC兩者兼用)
- ASP.NET 圖表控件(現(xiàn)在內(nèi)置于ASP.NET V4中了)
這意味著,在VS 2010中創(chuàng)建新的空白ASP.NET應(yīng)用項(xiàng)目時(shí),你會(huì)發(fā)現(xiàn)新的應(yīng)用級(jí)默認(rèn)web.config文件既干凈又簡(jiǎn)潔:
上面的第一個(gè)配置部分告訴ASP.NET默認(rèn)允許應(yīng)用調(diào)試,并向Visual Studio指定在提供intellisense時(shí)該定向的.NET版本(VS 2010支持多定向,IDE中的intellisense會(huì)根據(jù)你當(dāng)前針對(duì)的框架版本自動(dòng)改變)。
第二個(gè)配置部分表示在IIS7中運(yùn)行ASP.NET應(yīng)用時(shí)是否使用“integrated(集成)”模式,該模式控制了是否對(duì)應(yīng)用中的所有請(qǐng)求或者只是針對(duì)特定于ASP.NET的URL才運(yùn)行ASP.NET HttpModules模塊。我們?cè)谛?a href=/pingce/yingyong/ target=_blank class=infotextkey>應(yīng)用的應(yīng)用級(jí)web.config文件默認(rèn)啟用這個(gè)模式,因?yàn)椋瑸榧嫒莸脑颍?cè)在機(jī)器級(jí)的默認(rèn)IIS7設(shè)置是只對(duì)特定于ASP.NET的URL才運(yùn)行模塊,并不是對(duì)所有的請(qǐng)求。
結(jié)束語(yǔ)
.NET 4中簡(jiǎn)化了的web.config文件,其變動(dòng)貌似細(xì)小,但我還是認(rèn)為非常之棒,在你創(chuàng)建新的ASP.NET應(yīng)用時(shí)將使得其默認(rèn)體驗(yàn)更加干凈,也更為容易理解。
在以后的貼子里,我將深入探討ASP.NET 4中許多更加實(shí)質(zhì)性的改進(jìn)(以及若干個(gè)“細(xì)小但很棒”的調(diào)整)。
希望本文對(duì)你有所幫助,
Scott
NET技術(shù):VS 2010 和 .NET 4.0 系列之《干凈的Web.Config文件 》篇,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。