原作者:Sreedhar Koganti,翻譯:NetFire(Fire.Rolland.Han)
翻譯得到了原作者許可。
原文:http://www.w3coder.com/alphatalks/aspnet20.aspx
注:本文已經發表到“程序春秋”雜志2003年12期。現轉發CSDN,版權屬于NetFire本人、雜志社和CSDN,如需轉載請聯系本人或雜志社
開篇語:
在這篇文章中,我將向大家介紹一下WINDBEY的一些有趣的新特性。哦?是Whidbey?別搞混了,Whidbey就是V2的內部開發代號。(下文中V1表示ASP.NET 1.0,V2表示ASP.NET 2.0)
正文:
好吧,讓我們來講講V2;V2是MICROSOFT.NET的下一代應用程序開發平臺的“起始點”。據說它也是Yukon的一部分。別著急,MICROSOFT將會在即將的PDC大會上向您揭開V2 ALPHA的面紗。好了,讓我們言歸正傳。(PDC——Microsoft Professional Developers Conference,簡稱為PDC;Yukon——微軟下一代的SQL Server的內部開發代號)
在V2中有以下一些有趣的新特征:
a) 和v1相比,在v2中代碼行減少了70%,這是不是很讓人興奮?
b) 新的VS.NET(Whidbey)將會帶給使用者友好的、讓人興奮得新特性,這會讓開發人員的編程生活變得非常容易。
另外,在新版本的VS.NET中,有以下一些新特性。
1. 無項目的項目系統“Project-less”
如果你是從ASP轉過來的開發人員,你將會為這個前景感到非常興奮的。
2. Web站點將支持FileSystem,IIS,FTP和FPSE(Frontpage服務器擴展包)。
3. 同時支持代碼分離和頁面嵌入服務器端代碼兩種模式。
4. 完全的功能更強的智能語法和調試支持。
5. Html代碼保存;
微軟官方說這次它肯定有作用。所以對于ms陣營的開發者來說,這絕對是個好消息。
6. 支持真正的XHTML標準,以及動態插件的引擎;
7. 更加全面的支持數據庫的設計;
8. 在ASP.NET中增加了40多個新的控件。我相信他們將會給開發人員的工作帶來極大的方便。
下面分類介紹這些控件:
Login/Security Controls:
這里面有5個控件,他們非別是——
a) Login
b) LoginView
c) PasswordRecovery
d) LoginStatus
e) LoginName
這些都是使用起來非常方便的控件,并且這些控件將會讓開發登陸安全系統的應用程序變得非常簡單。

(圖一: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控件中,信息是以一種固定的格式存儲,并且和特定的用戶相關聯。ASP.NET的Personalization控件使得我們可用簡單的方法來管理用戶的信息,而不必非要去使用數據庫(這就免去了創建和維護數據庫的勞累工作)。另外,Personalization系統為我們處理用戶信息相關的這類問題時提供了一組規范、易用、強大的API,使得我們的應用程序能夠隨時隨地的使用。
下面是一些私有化控件的名字:
a) WebPartManager
b) WebPartZone
c) ContentWebPart
d) CatalogZone
e) PageCatalogPArt
f) EditorZone
g) TemplateCatalogPart
h) AppearanceEditorPart
i) LayoutEditorPart

(圖三:Whidbey的工具箱Data控件截圖)
Navigation:
這個Navigation控件幫助我們方便的在ASP.NET站點中創建導航。在一個站點中,我們可以用站點題圖描述這個站點的邏輯結構。當然,我們可以簡單的修改站點地圖來管理頁面的導航,也可以為了管理頁面導航做很多修改。

(圖四:Whidbey的工具箱Navigation控件截圖)
下面是另外一些新的控件(至于這些控件的名字,大家可以猜一下):
1) Wizard
2) Image Generation
3) Multi-View
4) ImageMap
5) Mobile controls 等等
Master Pages:
這個特性對許多站點都是有用的。借助master pages, 我們可在程序中進行一致的頁面布局。在我們的應用程序中, master page為所有的頁面定制了一個通用的外觀和標準行為。之后,我們可使用該Master Pages創建單獨的頁面實例,這些頁面自然將包含以上這些通用特性。你能夠在Wilson 的Blog —Master Pages details at paul Wilson blog中找到與此有關的內容。網址是—http://weblogs.asp.net/pwilson/posts/33273.aspx
Web Admin Tool:
在ASP.NET 2.0中,這是我最喜歡的一個新特性之一。這個工具將幫助我們配置web.config文件中的信息。所以,當在一個產品的應用中,不需要打開web.config文件來修改配置。就像IIS的虛擬目錄配置一樣,無論在什么時候在需要時,只要用這個工具修改一些屬性就可以了。比如需要修改web.config文件中的數據庫聯接串的時候。在IIS站點屬性中,你就可以找到名為ASP.NET的選項卡,它將幫助我們配置和管理web.config文件。下圖是在IIS站點屬性中的ASP.NET選項卡下的web admin tool。

(圖五:IIS中Web Admin Tool截圖)

(點擊“ Edit Configuration”按鈕后, 所顯示的內容截圖)
Cross Page Posting:
這是ASP.NET 2.0中我喜歡的另一個新特性。以前,在頁面之間傳遞數據是一件很痛苦的事情。但現在在ASP.NET 2.0中,這變得非常簡單容易。
頁面現在可以提交到另外一頁,同時最初的服務器控件可被訪問。這是不是讓您耳目一新?
怎么完成呢?完成它只需要非常簡單的兩個操作步驟,他們是:
1. 設置“PageTargetUrl”屬性,在按鈕和服務器控件中,它將引發頁面之間的提交;
2. 在目標頁中的相關控件的原使頁面中使用“PreviousPage”屬性。
好了,現在就可以控制前頁的控件傳送的數據了!
客戶端腳本:
現在我們可以說說新增的客戶端腳本支持,它們分別是:
a) Focus
b) Scrolling
c) Client Events
d) Out of band call backs to server
現在我們同樣可以從新聞組中獲得相關的支持。我認為這也是ASP.NET 2.0很不錯的新特征。
總結:
上面我們非常簡要的討論了所涉及的新特征,這里沒有提及象Mobility, Health Monitoring/Operations, Hosting,Copy Web in Visual Studio等新的特征。不要認為ASP.NET 2.0只有以上這些新特征。在文章中,我只是簡要的介紹了一些相對來說重要的新特征,這里說到的只是冰山一角。現在ASP.NET 2.0僅僅是在測試階段,也許正式發布的時候還有更多的新東西等著我們,讓我們拭目以待吧!