VS 2008新功能3:ASP.NET 3.5

摘要:VS 2008新功能3:ASP.NET 3.5

原文:http://www.ithome.com.tw/itadm/article.php?c=47295&s=6

ASP.NET 3.5 支援LINQ,強化網頁開發機制
新的ASP.NET版本為「3.5」,但實際上的更新,只是把2007年推出的ASP.NET AJAX 1.0,納入ASP.NET 2.0,並新增支援.NET平臺的新功能LINQ(Language Integrated Query)及些許控制項。

企業如果現階段仍未考慮採用LINQ技術,那麼使用.NET Framework 2.0,再額外下載ASP.NET AJAX 1.0,與ASP.NET 3.5的功能意義雷同,未必需要急著升級。

ASP.NET 3.5比較特別的控制項,是因應LINQ推出的LinqDataSource。如同ASP.NET 2.0推出的ObjectDataSource及SQLDataSource等,LinqDataSource也提供圖形化的步驟,幫助開發者快速繫結資料來源,設定篩選條件及網頁是否提供新增、刪除、修改及排序等機制。
>>>5步驟使用LinqDataSource控制項完成網頁資料表

相較於桌面應用程式連線資料庫後,所有工作可以在單一連結下完成,Web應用程式的情況較為複雜,ASP.NET網頁在需求送出之後,HTTP連線即中斷,因此資料繫結的過程比桌面應用程式複雜。例如網頁的分頁查詢,第5頁內容可能是第30到40筆的資料,這樣的操作不可能只以SQL陳述句實作,可能要運用StoredProcedure或本機端的類別,無法單純以資料庫完成,可能必須搭配多種資料來源。

這些DataSource控制項即是希望重新定義資料繫結,企圖抽象化資料的來源,無論是資料庫、XML或者DataSet,資料截取完後,就回收資源給其他的應用。

若就開發工具面上的強化,Visual Studio 2008增加了一些關鍵的Web開發機制,包括CSS的設計與管理工具,以及CSS/HTML的Intellisense機制,還有JavaScript的開發與除錯功能,這項機制最受社群關注。

JavaScript是開發Web應用常見的技術,只是在Ajax興起之前,開發者往往認為JavaScript是開發網頁互動機制的「小程式」,因此沒有受到重視。

事實上當JavaScript的程式碼增加,除錯與管理的困難度便浮現。尤其JavaScript的語言有大小寫的區分,而且許多函式是層層堆疊,然而市面上卻沒有成熟的編輯器,足以支援企業開發的需求。

利用記事本或UltraEdit寫程式,會有開發與除錯不易的問題,Visual Studio 2008支援JavaScript,提供Intellisense機制,當使用者輸入【物件.】,系統就會自動彈出屬性方法的選單,所以開發上不用擔心打錯字或者記憶屬性和函數的問題。在除錯功能方面,開發者可以設定中斷點、單步偵錯或者追蹤變數,甚至與IE結合,同步檢視執行的結果。也就是說,VB與C#的開發經驗,可以完全複製到JavaScript,對於網頁開發的生產力是一大助益。

此外,Visual Studio 2008能同時處理不同.NET版本所開發的程式碼,也是相當實用的功能。過去以新版Visual Studio開啟專案,即自動將程式升級到最新的.NET版本,而Visual Studio 2008具備Multi-Targeting機制,可以支援.NET 2.0、3.0及3.5等專案版本,所以如果企業尚未決定是否升級到ASP.NET 3.5,開啟專案時可選擇2.0或3.0的.NET Framework版本,Visual Studio即自動連結該版本可以使用的專案範本、工具箱、參考的內容及IntelliSense。如此一來,開發者既可停留在原來的.NET版本,同時又可使用Visual Studio 2008新增的Web開發機制,是可以兩全的作法。

提供JavaScript除錯機制
JavaScript語言有大小寫的區別,因此程式容易因為大小寫或拼字的錯誤,而無法正確執行,Visual Studio 2008提供的除錯機制,對JavaScript的開發與維護有很大助益。資料來源:微軟,iThome整理,2008年1月


提供JavaScript Intellisense機制
JavaScript函式層層堆疊,語法不易記憶,Visual Studio 2008提供Intellisense功能,希望加速開發JavaScript的生產力。資料來源:微軟,iThome整理,2008年1月


提供CSS Intellisense機制
無論是ASP.NET或者HTML網頁,Visual Studio 2008都提供CSS的Intellisense機制。資料來源:微軟,iThome整理,2008年1月