原作者:Sreedhar Koganti,翻譯:NetFire(Fire.Rolland.Han)
翻譯得到了原作者許可。
原文:http://www.w3coder.com/alphatalks/aspnet20.aspx
注:本文已經(jīng)發(fā)表到“程序春秋”雜志2003年12期,F(xiàn)轉(zhuǎn)發(fā)CSDN,版權(quán)屬于NetFire本人、雜志社和CSDN,如需轉(zhuǎn)載請(qǐng)聯(lián)系本人或雜志社
開篇語(yǔ):
在這篇文章中,我將向大家介紹一下WINDBEY的一些有趣的新特性。哦?是Whidbey?別搞混了,Whidbey就是V2的內(nèi)部開發(fā)代號(hào)。(下文中V1表示ASP.NET 1.0,V2表示ASP.NET 2.0)
正文:
好吧,讓我們來(lái)講講V2;V2是MICROSOFT.NET的下一代應(yīng)用程序開發(fā)平臺(tái)的“起始點(diǎn)”。據(jù)說(shuō)它也是Yukon的一部分。別著急,MICROSOFT將會(huì)在即將的PDC大會(huì)上向您揭開V2 ALPHA的面紗。好了,讓我們言歸正傳。(PDC——Microsoft Professional Developers Conference,簡(jiǎn)稱為PDC;Yukon——微軟下一代的SQL Server的內(nèi)部開發(fā)代號(hào))
在V2中有以下一些有趣的新特征:
a) 和v1相比,在v2中代碼行減少了70%,這是不是很讓人興奮?
b) 新的VS.NET(Whidbey)將會(huì)帶給使用者友好的、讓人興奮得新特性,這會(huì)讓開發(fā)人員的編程生活變得非常容易。
另外,在新版本的VS.NET中,有以下一些新特性。
1. 無(wú)項(xiàng)目的項(xiàng)目系統(tǒng)“Project-less”
如果你是從ASP轉(zhuǎn)過(guò)來(lái)的開發(fā)人員,你將會(huì)為這個(gè)前景感到非常興奮的。
2. Web站點(diǎn)將支持FileSystem,IIS,F(xiàn)TP和FPSE(Frontpage服務(wù)器擴(kuò)展包)。
3. 同時(shí)支持代碼分離和頁(yè)面嵌入服務(wù)器端代碼兩種模式。
4. 完全的功能更強(qiáng)的智能語(yǔ)法和調(diào)試支持。
5. Html代碼保存;
微軟官方說(shuō)這次它肯定有作用。所以對(duì)于ms陣營(yíng)的開發(fā)者來(lái)說(shuō),這絕對(duì)是個(gè)好消息。
6. 支持真正的XHTML標(biāo)準(zhǔn),以及動(dòng)態(tài)插件的引擎;
7. 更加全面的支持?jǐn)?shù)據(jù)庫(kù)的設(shè)計(jì);
8. 在ASP.NET中增加了40多個(gè)新的控件。我相信他們將會(huì)給開發(fā)人員的工作帶來(lái)極大的方便。
下面分類介紹這些控件:
Login/Security Controls:
這里面有5個(gè)控件,他們非別是——
a) Login
b) LoginView
c) PasswordRecovery
d) LoginStatus
e) LoginName
這些都是使用起來(lái)非常方便的控件,并且這些控件將會(huì)讓開發(fā)登陸安全系統(tǒng)的應(yīng)用程序變得非常簡(jiǎn)單。
(圖一:Whidbey的工具箱Security控件截圖)
Data/DataSource控件:
下面是ASP.NET 2.0中新的Data Source控件:
1. <asp:SqlDatasource>
2. <asp:AccessDatasource>
3. <asp:XmlDatasource>
4. <asp:SitemapDatasource>
5. <asp:ObjectDatasource>
6. <asp:DataSetDatasource>
下面是ASP.NET 2.0中新的Data Bound 控件:
1. <asp:gridview>
2. <asp:detailsview>
3. <asp:treeview>
4. <asp:menu> (Beta timeframe)
(圖二:Whidbey的工具箱Data控件截圖)
Personalization:
在ASP.NET的Personalization控件中,信息是以一種固定的格式存儲(chǔ),并且和特定的用戶相關(guān)聯(lián)。ASP.NET的Personalization控件使得我們可用簡(jiǎn)單的方法來(lái)管理用戶的信息,而不必非要去使用數(shù)據(jù)庫(kù)(這就免去了創(chuàng)建和維護(hù)數(shù)據(jù)庫(kù)的勞累工作)。另外,Personalization系統(tǒng)為我們處理用戶信息相關(guān)的這類問(wèn)題時(shí)提供了一組規(guī)范、易用、強(qiáng)大的API,使得我們的應(yīng)用程序能夠隨時(shí)隨地的使用。
下面是一些私有化控件的名字:
a) WebPartManager
b) WebPartZone
c) ContentWebPart
d) CatalogZone
e) PageCatalogPArt
f) EditorZone
g) TemplateCatalogPart
h) AppearanceEditorPart
i) LayoutEditorPart
(圖三:Whidbey的工具箱Data控件截圖)
Navigation:
這個(gè)Navigation控件幫助我們方便的在ASP.NET站點(diǎn)中創(chuàng)建導(dǎo)航。在一個(gè)站點(diǎn)中,我們可以用站點(diǎn)題圖描述這個(gè)站點(diǎn)的邏輯結(jié)構(gòu)。當(dāng)然,我們可以簡(jiǎn)單的修改站點(diǎn)地圖來(lái)管理頁(yè)面的導(dǎo)航,也可以為了管理頁(yè)面導(dǎo)航做很多修改。
(圖四:Whidbey的工具箱Navigation控件截圖)
下面是另外一些新的控件(至于這些控件的名字,大家可以猜一下):
1) Wizard
2) Image Generation
3) Multi-View
4) ImageMap
5) Mobile controls 等等
Master Pages:
這個(gè)特性對(duì)許多站點(diǎn)都是有用的。借助master pages, 我們可在程序中進(jìn)行一致的頁(yè)面布局。在我們的應(yīng)用程序中, master page為所有的頁(yè)面定制了一個(gè)通用的外觀和標(biāo)準(zhǔn)行為。之后,我們可使用該Master Pages創(chuàng)建單獨(dú)的頁(yè)面實(shí)例,這些頁(yè)面自然將包含以上這些通用特性。你能夠在Wilson 的Blog —Master Pages details at paul Wilson blog中找到與此有關(guān)的內(nèi)容。網(wǎng)址是—http://weblogs.asp.net/pwilson/posts/33273.aspx
Web Admin Tool:
在ASP.NET 2.0中,這是我最喜歡的一個(gè)新特性之一。這個(gè)工具將幫助我們配置web.config文件中的信息。所以,當(dāng)在一個(gè)產(chǎn)品的應(yīng)用中,不需要打開web.config文件來(lái)修改配置。就像IIS的虛擬目錄配置一樣,無(wú)論在什么時(shí)候在需要時(shí),只要用這個(gè)工具修改一些屬性就可以了。比如需要修改web.config文件中的數(shù)據(jù)庫(kù)聯(lián)接串的時(shí)候。在IIS站點(diǎn)屬性中,你就可以找到名為ASP.NET的選項(xiàng)卡,它將幫助我們配置和管理web.config文件。下圖是在IIS站點(diǎn)屬性中的ASP.NET選項(xiàng)卡下的web admin tool。
(圖五:IIS中Web Admin Tool截圖)
(點(diǎn)擊“ Edit Configuration”按鈕后, 所顯示的內(nèi)容截圖)
Cross Page Posting:
這是ASP.NET 2.0中我喜歡的另一個(gè)新特性。以前,在頁(yè)面之間傳遞數(shù)據(jù)是一件很痛苦的事情。但現(xiàn)在在ASP.NET 2.0中,這變得非常簡(jiǎn)單容易。
頁(yè)面現(xiàn)在可以提交到另外一頁(yè),同時(shí)最初的服務(wù)器控件可被訪問(wèn)。這是不是讓您耳目一新?
怎么完成呢?完成它只需要非常簡(jiǎn)單的兩個(gè)操作步驟,他們是:
1. 設(shè)置“PageTargetUrl”屬性,在按鈕和服務(wù)器控件中,它將引發(fā)頁(yè)面之間的提交;
2. 在目標(biāo)頁(yè)中的相關(guān)控件的原使頁(yè)面中使用“PreviousPage”屬性。
好了,現(xiàn)在就可以控制前頁(yè)的控件傳送的數(shù)據(jù)了!
客戶端腳本:
現(xiàn)在我們可以說(shuō)說(shuō)新增的客戶端腳本支持,它們分別是:
a) Focus
b) Scrolling
c) Client Events
d) Out of band call backs to server
現(xiàn)在我們同樣可以從新聞組中獲得相關(guān)的支持。我認(rèn)為這也是ASP.NET 2.0很不錯(cuò)的新特征。
總結(jié):
上面我們非常簡(jiǎn)要的討論了所涉及的新特征,這里沒有提及象Mobility, Health Monitoring/Operations, Hosting,Copy Web in Visual Studio等新的特征。不要認(rèn)為ASP.NET 2.0只有以上這些新特征。在文章中,我只是簡(jiǎn)要的介紹了一些相對(duì)來(lái)說(shuō)重要的新特征,這里說(shuō)到的只是冰山一角。現(xiàn)在ASP.NET 2.0僅僅是在測(cè)試階段,也許正式發(fā)布的時(shí)候還有更多的新東西等著我們,讓我們拭目以待吧!