使用Visual Studio 2014 CTP1進行ASP.NET vNext開發

來源:互聯網
上載者:User

vNext又稱MVC 6.0,不再需要依賴System.Web,佔用的記憶體大大減少(從前無論是多麼簡單的一個請求,System.Web本身就要佔用31KB記憶體)。

可以self-host模式運行,網站不再需要依賴IIS而運行,由此從此可以快速向客戶示範開發進度,以及更好地支援真正跨平台(Linux、Mac、Unix)。

Web Api、Web Pages與MVC完全融為一體,統稱MVC 6.0。在過去,輸出JSON,既可以使用MVC內建的return JSON,也可以使用Web Api,這樣分而治之的場面給整個社區都帶來不良影響(JSON僅是其中一個例子,其它很多功能都是一樣),現在,Web Api 完全融入了vNext,重複的輪子在這裡終於得到終結。

支援Poco形式的Controller,代碼更加乾淨。

雲最佳化技術,也就是說在開發階段,系統本身並不真正載入某個組件,而是在運行時才查詢合適版本的組件,由此帶來的好處是在Azure雲主機、Mono主機和Windows主機上可以依賴最合適當前環境的某個組件Dll。

內建了依賴注入架構

使用Roslyn編譯器,產生的程式碼更高效

與1~5.x的差異:

1:Project.json代替了從前的Web.config:

項目包的依賴項在dependencies節點中定義。

configurations節點儲存的是項目設定資訊。

commands節點儲存的是self-host配置參數,例如本地綁定連接埠號碼。

自訂節點,例如自訂一個Data節點,在它的範圍中再定義一個DefaultConnectionString來記錄資料庫連接字串。

2:Startup.cs代替了Global.asax

3:Views檔案夾中不再需要專門的Web.config

當你添加某個引用(例如Entity Framework)的時候,需要網路即時載入,所以如果遇到“找不到某某類庫”的錯誤時,不要擔心,過一會就好了。但是,有可能在某個良辰吉日裡,你無論等多久都沒用,因為我們身在天朝,你懂的。

================================================

MVC的基本概念不變,依然是從前的 RouteTable、Controller、View、Action、Razor、Model

下面的教程中涉及到載入包,以及各個包的版本號碼,例如"0.1-alpha-build-0403",也許你看到這篇文章的時候,版本號碼已經不適用了,最簡單的解決辦法是建立一個現成的ASP.NET vNext Web Application(注意不是空項目),它會載入當前可用的常用包,對照裡面的對應包的版本號碼。

如果需要輸出靜態檔案,例如 .html、.jpg,需要載入專門的處理流程,它們儲存在Microsoft.AspNet.StaticFiles中。

下面我們開始構建一個vNext網站

建立一個ASP.NET vNext 空項目

之後得到的目錄結構,比從前簡單多了:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.