近期微軟發(fā)布了ASP.NET 5.0,本次發(fā)布的新特性需求源于大量用戶的反饋和需求,例如靈活的跨平臺運(yùn)行時(shí)和自主部署能力使ASP.NET應(yīng)用不再受限于IIS、Cloud-ready環(huán)境配置降低了云端部署的門檻,另外源碼開放無疑也是一個(gè)重量級驚喜。這些更改會有助于創(chuàng)建易于開發(fā)、部署、維護(hù)和現(xiàn)代的Web應(yīng)用程序。相信看到以上幾點(diǎn)作為.NET程序員的你已經(jīng)迫不及待體驗(yàn)ASP.NET 5 的新功能了,下面我們就來看下這些新特性。
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括南安網(wǎng)站建設(shè)、南安網(wǎng)站制作、南安網(wǎng)頁制作以及南安網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,南安網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到南安省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!ASP.NET 5 是用于創(chuàng)建Web應(yīng)用的框架,相對于以前的版本它更加簡練、靈活,本次發(fā)布的版本徹底優(yōu)化了應(yīng)用開發(fā)框架,你可以輕松部署應(yīng)用到云端或其他平臺,它包含了最小的模塊化組件,所以確保你在構(gòu)建復(fù)雜解決方案的同時(shí)保持靈活性。
ASP.NET 5 包含以下特性:
·靈活的跨平臺運(yùn)行時(shí)
·新的HTTP模塊請求管道
·Cloud-ready環(huán)境配置
·統(tǒng)一了包含 MVC、 Web API 和 Web 頁面的編程模型
·無需重新編譯即可查看更改效果
·并行的.NET Framework 版本
·自主部署或IIS部署能力
·內(nèi)嵌于Visual Studio 2015中的新工具
·GitHub開放源碼
使用舊版本開發(fā)的應(yīng)用程序不需要做任何修改,即可直接在 ASP.NET 5上運(yùn)行。然而,如需使用ASP.NET 5 新功能,你需要將現(xiàn)有代碼移植到新的框架。ASP.NET 5 和早期 ASP.NET 版本基本相同,因此你只需要把精力集中到新功能開發(fā)上,節(jié)省了你的代碼遷移時(shí)間。
以上概括性的介紹了ASP.NET 5的新特性和增強(qiáng)功能。
為什么重新設(shè)計(jì) ASP.NET ?
靈活的跨平臺運(yùn)行時(shí)需求
靈活的部署環(huán)境
多Framework版本并行使用
簡化依賴關(guān)系管理
合并MVC、 Web API 和 Web 頁
增強(qiáng)HTTP性能
Cloud-ready 部署能力
集成依賴注入
開源
提供敏捷的開發(fā)環(huán)境
關(guān)于Web Forms
早期版本Framework開發(fā)應(yīng)用兼容性
靈活的跨平臺運(yùn)行時(shí)需求
早期 .NET Framework 版本一直作為單一且全面的整體進(jìn)行安裝,每個(gè)新版本都包含了新功能和幾乎所有早期功能,而鮮有刪減,這就不可避免的造成Framework的體積的增長。這種模式確保了安裝了新版 Framework的Windows系統(tǒng)可以兼容所有早期版本的.NET 應(yīng)用,但是也意味著每個(gè)應(yīng)用都將運(yùn)行在一個(gè)龐大冗余的框架上,即使很多功能在實(shí)際項(xiàng)目中沒有使用。
相信每位.NET程序員都遇到過以下尷尬的決策場景:當(dāng)收到Framework有更新發(fā)布時(shí)的通知時(shí),是放棄使用新增功能保持應(yīng)用的靈活性還是使用新特性而忍痛讓你的Framework更加龐大!
為了應(yīng)對以上場景。ASP.NET 5提供了三種運(yùn)行時(shí),你可以根據(jù)實(shí)際需要靈活選擇:
1. 全功能.NET CLR
全功能.NET CLR 是Visual Studio工程默認(rèn)運(yùn)行時(shí)狀態(tài)。它提供所有 API,是保持應(yīng)用向下兼容性最佳選擇。
2. 核心CLR (cloud-optimized runtime)
核心 CLR 是精簡的完全模塊化運(yùn)行時(shí)。這個(gè)CLR已經(jīng)被重新設(shè)計(jì)成組件便于你僅包含項(xiàng)目中實(shí)際使用的的.NET特性。組件作為NuGet 包添加。一旦完成引用,你的應(yīng)用僅依賴于所需的功能。通過分解運(yùn)行時(shí)為組件,我們可以更快的更改每個(gè)組件,因?yàn)槊總€(gè)組件都有自我更新機(jī)制。核心CLR只有11M大小,相對于200M的全功能CLR無疑將使應(yīng)用更加輕便。核心CLR可以伴隨應(yīng)用一起部署并且不同的核心CLR可以并行運(yùn)行。
3. 跨平臺CLR
微軟將發(fā)布針對于Linux 和 Mac OS X 發(fā)布跨平臺運(yùn)行時(shí)。這意味著你的.NET應(yīng)用具備了在Mac 和Linux 設(shè)備上運(yùn)行的能力。微軟將和 Mono 社區(qū)合作完成這一新特性。在發(fā)布之前,你可以使用Mono CLR用于跨平臺開發(fā)。
新建 Visual Studio 工程默認(rèn)使用全功能 .NET CLR,可以在工程屬性頁面更改為核心CLR。
ASP.NET 5 允許部署應(yīng)用到 IIS,或脫離IIS進(jìn)行獨(dú)立部署,當(dāng)設(shè)置目標(biāo) Framework 為Core CLR時(shí),即可以使用部署包中的依賴項(xiàng)來部署應(yīng)用。因此,你的應(yīng)用自成一體,再不依賴于全功能的.NET 版本。該應(yīng)用可以在任何設(shè)備和平臺中運(yùn)行應(yīng)用。
這對.NET平臺開發(fā)人員無疑又是個(gè)驚喜,部署應(yīng)用不在局限于IIS,當(dāng)然微軟仍然推薦你使用IIS部署應(yīng)用,但是如果需要在不兼容IIS的平臺部署應(yīng)用,你就可以使用該新特性進(jìn)行操作。
后續(xù)文章中我們會發(fā)布如何創(chuàng)建不依賴于IIS 的MVC6應(yīng)用,敬請期待。
多版本.NET并行使用
早期版本的.NET Framework,你將時(shí)刻面臨是否更新版本的選擇,一方面你希望使用更新的功能,另一方面你將為舊版本開發(fā)的工程是否可以平滑遷移到新版 .NET Framework 而感到糾結(jié)。
微軟在 ASP.NET 5中改善了以上問題。在使用核心CLR前提下,你可以在部署包內(nèi)定義依賴關(guān)系,所以你可以為每個(gè)應(yīng)用程序指定.NET版本。 舊版應(yīng)用可以平滑運(yùn)行,同時(shí)你也可以使用新版本開發(fā)應(yīng)用。因此在ASP.NET 5中多個(gè)版本的.NET應(yīng)用是并行的。
ASP.NET 5 推出了一種全新的輕量級依賴關(guān)系管理機(jī)制。你不再需要在應(yīng)用中添加引用,而是使用引用NuGet 包代替。你可以通過NuGet Package 管理器添加NuGet包,或者你可以編輯包含NuGet包列表和版本信息 JSON 文件(project.json)來實(shí)現(xiàn)引用。project.json 文件用于列舉應(yīng)用使用的 NuGet 相關(guān)信息,如需添加其他引用,直接在該JSON文件中添加即可。
在 Visual Studio 2015中,根據(jù)智能提示可以快速的添加NuGet 包。
project.json 文件僅包含直接添加到工程中的 NuGet 包。如果添加引用文件外的包,這類依賴項(xiàng)將僅僅被加載,而不會顯示到project.json 文件中。這種機(jī)制可以使project.json 文件輕便易管理。
JSON格式文件使你可以在沒有安裝Visual Studio情況下,輕松管理引用。當(dāng)然,可以使用任何文本編輯器打開和編輯project.json。
早期版本中, MVC、Web API 和Web 頁一直在使用著不同的方式實(shí)現(xiàn)著相同的功能,可以說是殊途同歸。例如, MVC 和Web API 都提供了路由,但是MVC routing 類在System.Web.Mvc.Routing 命名空間中,而Web API 中類似的類在System.Web.Http.Routing 命名空間中。再舉一個(gè)例子, Web 頁和 MVC 都是有Razor 語法, 但是仍然包含在相同功能的不同NuGet包中。
在 ASP.NET 5 中, MVC、Web API和and Web 頁將被整合到同一框架-MVC 6。這就意味著移除了重復(fù)功能模塊,使開發(fā)應(yīng)用變得更簡單。
在預(yù)覽版本中, MVC and Web API 首先被合并到MVC 6中。 Web 頁面將后在后續(xù)發(fā)布版本中添加。
增強(qiáng)HTTP性能
ASP.NET 5 提供了一個(gè)精煉快速的HTTP 請求管道,該模塊化管道允許你僅添加需要的組件,通過減輕管道開銷,應(yīng)用將有更好的吞吐量。
云部署能力
當(dāng)你創(chuàng)建一個(gè)新的 ASP.NET 5 工程,這個(gè)工程默認(rèn)就已經(jīng)具備輕松部署到云端的結(jié)構(gòu)。Visual Studio 2015 提供了全新的環(huán)境配置系統(tǒng)代替了Web.config 文件。新的系統(tǒng)允許使用多種文件類型(例如JSON, XML, or 或環(huán)境變量)存儲鍵值對,因此你可以在任意環(huán)境中輕松指定值或獲取這些值。
同時(shí),ASP.NET 5提供了檢測和跟蹤已部署云應(yīng)用問題的工具。
集成依賴注入
依賴注入被內(nèi)置于ASP.NET 5中。你可以使用 IoC容器注冊依賴項(xiàng)。依賴關(guān)系的注入促進(jìn)了正確服務(wù)環(huán)境的提供。
ASP.NET源碼已經(jīng)發(fā)布到GitHub中。不僅僅提供了當(dāng)前版本源代碼,微軟也承諾會同步更新GitHub中的源碼,你可以及時(shí)查看到ASP.NET 的變化,可以下載并且提交更改到GitHub上。
這有助于你了解ASP.NET 代碼及技術(shù)走向,同時(shí)你可以定制自己的ASP.NET。
提供敏捷的開發(fā)環(huán)境
Visual Studio 2015 提供了一個(gè)輕量級的ASP.NET 開發(fā)環(huán)境。無需重新編譯工程,只需要保存更改代碼,就可以在瀏覽器中查看最新結(jié)果。
你更改的代碼可以在Web工程或者由當(dāng)前Web工程中引用的類庫中。
Visual Studio 使用 Roslyn 編譯器允許動(dòng)態(tài)編譯。確保你擁有完整、強(qiáng)大的編譯框架的同時(shí),擁有趨近于解釋語言的開發(fā)體驗(yàn)。
每個(gè)Visual Studio 的用戶界面都具有對應(yīng)的腳本,因此你可以輕松在UI界面和腳本之間切換。
最后,可以使用其他代碼編輯器編輯ASP.NET 5 工程。
微軟一直致力于提供給用戶新的功能去改善開發(fā)體驗(yàn),你仍舊可以開發(fā)Web Forms 應(yīng)用,并且在Web Forms 4.6 添加了以下新特性:
HTTP 2
異步綁定模式
Roslyn CodeDOM 編譯器
早期版本開發(fā)的 Web Forms 應(yīng)用無需任何更改可以直接在 IIS .NET 4.6框架下運(yùn)行。不過,無法使用ASP.NET 5 核心CLR新特性。
例如當(dāng)前有使用Web Forms、 MVC 5、 Web API 2、SignalR 2、 Web Pages 3 或 Entity Framework 6 開發(fā)的應(yīng)用,你僅需設(shè)置當(dāng)前運(yùn)行時(shí)版本為全功能運(yùn)行時(shí),無需做出任何代碼級別修改即可在 ASP.NET 5中運(yùn)行。 但是, 核心CRL是ASP.NET 5新特性,如果你希望應(yīng)用具備該運(yùn)行時(shí)的功能,那么需要做出一定的修改。微軟提供 API Portability Analyzer 工具可以判斷當(dāng)前應(yīng)用是否可以使用核心CRL。這個(gè)工具還可以分析當(dāng)前應(yīng)用可以運(yùn)行在哪些平臺,以及哪些因素阻止其不能在特定平臺上運(yùn)行。同時(shí)也會提示所需要的更改以及使用哪些新增接口來替換。
MVC 6 和 SignalR 3 應(yīng)用使用新的HTTP管道,所以它們無法與使用System.Web 接口的應(yīng)用兼容。如果需要升級已存在應(yīng)用到MVC 6 或者 SignalR 3,你必須使用Visual Studio 2015 創(chuàng)建新工程,再導(dǎo)入原有工程,導(dǎo)入過程中需要修改不支持的代碼片段。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前標(biāo)題:ASP.NET5系列教程(一):領(lǐng)讀新特性-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://muchs.cn/article48/ceeeep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、域名注冊、Google、商城網(wǎng)站、ChatGPT、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容