Visual Studio 2013:ASP.NET與Web功能快速預覽
新增項目時,在Web分類目錄下,只剩下一個ASP.NET Web應用程序 項目類型:
( 另一個是Portable Class Library專案類型,不算Web專案 )
接著是透過第二步來選擇項目模板,將所有ASP.NET專案都統(tǒng)一了。過程中還能選擇要加入Web Forms、MVC 或 Web API等參考:
右邊有個Configuration Authentication能選擇不同的驗證模式
選擇 Individual User Accounts 其實就是窗體驗證 (FormsAuthentication),除此之外還能搭配 OAuth 驗證 Facebook, Google, Microsoft Account (Live ID), Twitter 與其他自定義的驗證方式!
默認項目模板全面改用 Bootstrap 打底 ( 各位應該已經開始用了吧? )
影片中介紹了Bootswatch套件,可以直接下載Bootstrap主題并直接套用到項目上,非常方便:
全新的Scaffold機制,可以讓你在任意ASP.NET項目模板中透過工具快速產生程序與頁面 (程序產生器),例如你可以在 ASP.NET Web Form 專案新增 ASP.NET MVC 頁面程序,反之亦然,或直接新增 ASP.NET Web API 相關程序等等。像要新增 ASP.NET MVC 的 Controller 或 View 等等,也全都改用這個全新流程來新增程序或頁面。
ASP.NET Web Form也可以像ASP.NET MVC那樣自定義路由,并多幾個取得網址的方法:
新版 Visual Studio 2013 確定移除 ASP.NET 開發(fā)服務器 (Cassini),開發(fā)環(huán)境不會再有 IIS6 執(zhí)行模式了
也可以指定自定義個External Host路徑,透過IIS以外的媒介來裝載目前的網站,例如OWIN或其他自定義的 Web 服務器 (Self-host) 環(huán)境。
#p#
新功能:Browser Link (Live Browser Updates) (Code Name: Artery )
Visual Studio 2013 可以讓你同時開啟多個瀏覽器,并且能讓 Visual Studio 2013 控制這些瀏覽器,且不僅僅只有 IE 而已,連 Google Chrome、Opera Mobile Emulator 都可以控制,你只要按下下圖的 Reload 圖示,所有已鏈接的瀏覽器就能自動重載。而且,當你在 Visual Studio 2013 修改 CSS 的時候,也都會直接反映到瀏覽器上,兩邊真的是直接連結在一起。
但是,最夸張的是,等到 Visual Studio 2013 正式版推出時,你甚至于可以在瀏覽器的開發(fā)者工具編修網頁 DOM 內容,編修的結果還能直接回寫到 Visual Studio 2013 的 Web 項目里,這實在太扯啦!!!
ASP.NET Web API v2 支持透過屬性定義路由 ( Attribute Routing )
啟用 Attribute Routing 的方式,只要在 App_Start\WebApiConfig.cs 加入以下這行即可:
啟用Attribute Routing的方式,只要在 App_Start\WebApiConfig.cs 加入以下這行即可:
透過 Attribute Routing 定義,將 Web API 進行版本區(qū)隔,也變得十分容易且直覺:
***則是可以在網址路由上,直接將路由值宣告型別限制,設定方式也比之前直覺許多。以下圖為例,兩個 Get() 方法,在 C# 中傳入的型別不一樣,但在網址路由的地方卻可以輕易的透過路由參數 (RouteValue) 的類型聲明,直接就可以做出路由限制的定義,是不是很棒! ^^
HTML5 規(guī)格中定義了 CORS (Cross-origin resource sharing) 協(xié)議,允許你在瀏覽器中的 JavaScript 在符合 CORS 規(guī)定下,執(zhí)行跨網域的 JavaScript 內容,如 XHR 要求 (AJAX)、抓取不同網域的 JSON 資料等等。在新版 ASP.NET Web API 里,設定方式也非常簡單,如下所示:
然后你也可以透過 EnableCors 屬性宣告,直接指定特定 API 的 CORS 宣告:
還可以限定 JS 呼叫端一定要送出特定 HTTP Headers 才允許呼叫:
ASP.NET Web API v2 還內建許多 API 常見的功能,例如 Token Generation Service 就能用少少的 Code 完成許多透過 API 驗證等工作。
ASP.NET Web API 也支持更多 Self-host 的執(zhí)行環(huán)境,例如透過OWIN (Open Web Interface for .NET) 就能將 ASP.NET Web API 裝載在 IIS 以外的執(zhí)行環(huán)境,例如 Console Application 或 Katana 等等。
另外,SignalR v2 也即將推出,他依樣可以裝載在各種 Self-host 的環(huán)境:
SignalR v2 還提供了 Xamarin 客戶端代碼,可以幫你快速建置跨行動裝置 Native App 的實時互動程序。
新版 ASP.NET 還提供一套全新的身分驗證機制:ASP.NET Identity,可以讓你在開發(fā)登入注銷、注冊使用者、身分驗證、腳色授權、…等各種與身分驗證有關的功能十,更加彈性!而且只要替換少少的程序代碼,就可以快速切換到各種不同的驗證平臺。在搭配 Code First 等數據庫開發(fā)方法,項目開發(fā)的速度將會提升許多。
ASP.NET MVC 5 與 ASP.NET Web API 2 與 ASP.NET SignalR 2.0 確定不支持 .NET 4.0 版本,也代表 Windows Server 2003 再也無法執(zhí)行 ASP.NET MVC 5,這點開發(fā)人員必須注意。