創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括大埔網(wǎng)站建設(shè)、大埔網(wǎng)站制作、大埔網(wǎng)頁(yè)制作以及大埔網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,大埔網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到大埔省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!
隨著 .NET Core 2.0 的發(fā)布,.NET 開(kāi)源跨平臺(tái)迎來(lái)了新的時(shí)代。開(kāi)發(fā)者們可以選擇使用命令行、個(gè)人喜好的文本編輯器、Visual Studio 2017 15.3 和 Visual Studio Code 來(lái)開(kāi)發(fā)自己的 .NET Core 2.0 項(xiàng)目。同時(shí),微軟 .NET 開(kāi)發(fā)工具組也宣布了 ASP.NET Core 2.0 的發(fā)布,并且此版本與 .NET Core 2.0、Visual Studio 2017 15.3 和新的 Razor Pages 頁(yè)面優(yōu)化范例兼容。相信目前技術(shù)社區(qū)中開(kāi)發(fā)人員討論最多的問(wèn)題就是:是否應(yīng)該將代碼遷移到 ASP.NET Core 2.0? ”
答案是肯定的。
下面就讓我們看看將代碼遷移到 ASP.NET Core 2.0 有哪些好處?
性能提升是 ASP.NET Core 2.0 帶來(lái)的最顯著的改變。
隨著 ASP.NET Core 2.0 中新技術(shù)和語(yǔ)言增強(qiáng)的出現(xiàn),代碼在編譯時(shí)會(huì)自動(dòng)進(jìn)行優(yōu)化。
這項(xiàng)改變能夠帶來(lái)的好處就是,個(gè)人不再需要更改代碼。編譯器會(huì)在使用新的語(yǔ)言增強(qiáng)功能進(jìn)行重新編譯時(shí),對(duì)代碼進(jìn)行優(yōu)化。
TechEmpower 發(fā)現(xiàn)在超過(guò) 230 個(gè)使用 Web 框架基準(zhǔn)的框架中,ASP.NET Core 在性能上都取得了巨大的進(jìn)步。
ASP.NET Core 新版本的發(fā)布,引入了一種新的編碼范例。新的編碼范例使得基于頁(yè)面的設(shè)計(jì)和編碼比 Model-View-Controller 結(jié)構(gòu)更加簡(jiǎn)單和容易。使用 Razor Pages 作為第一頁(yè)的頁(yè)面結(jié)構(gòu),能夠讓開(kāi)發(fā)人員更加專(zhuān)注于用戶(hù)界面。
如果你很熟悉為 MVC 配置 ASP.NET Core Startup 類(lèi),那么可以在 Startup 類(lèi)中添加以下代碼:
public class Startup { public void ConfigureServices(IServiceCollection services) { // Includes support for Razor Pages and controllers. services.AddMvc(); } public void Configure(IApplicationBuilder app) { app.UseMvc(); } }
Startup 類(lèi)中的 AddMvc 和 UseMvc 會(huì)進(jìn)行配置調(diào)用并激活“Razor Pages”功能。
通過(guò)新的 PageModel 對(duì)象能夠構(gòu)建更復(fù)雜的結(jié)構(gòu)。PageModel 是 MVVM 架構(gòu)的一個(gè)概念,允許開(kāi)發(fā)人員執(zhí)行方法并將屬性綁定到正在呈現(xiàn)的頁(yè)面內(nèi)容中。
ASP.NET Core 附帶的模板已被增強(qiáng),不僅包括使用 MVC 模式構(gòu)建的 Web 應(yīng)用程序,還包括 Razor Pages Web 應(yīng)用程序模板,以及一系列能夠?yàn)闉g覽器構(gòu)建單頁(yè)應(yīng)用程序 (SPA)的模板。這些 SPA 模板使用 JavaScript 服務(wù)功能在服務(wù)器上將 NodeJS 嵌入到 ASP.NET Core 中,并將 JavaScript 服務(wù)器端的應(yīng)用程序作為.NET構(gòu)建過(guò)程的一部分進(jìn)行編譯。
許多 ASP.NET Core 應(yīng)用程序現(xiàn)在可以通過(guò)將其 DbContext 類(lèi)型的服務(wù)注冊(cè),配置為使用預(yù)先創(chuàng)建的實(shí)例池來(lái)獲得性能提升,從而能夠避免為每個(gè)請(qǐng)求創(chuàng)建新的實(shí)例。
將以下代碼添加到啟動(dòng)/配置服務(wù),就能啟用 DbContext pooling。
services.AddDbContextPool < BloggingContext >( options => options.UseSqlServer(connectionString) );
ASP.NET Core 2.0 在 Azure App Service 上運(yùn)行時(shí),不但無(wú)需做任何修改并且還提供集成功能,同時(shí)還能獲取 Azure Application Insights 提供的性能分析、錯(cuò)誤報(bào)告和診斷結(jié)果。在 Visual Studio 2017 中,右鍵單擊 project,然后選擇“Add – Application Insights Telemetry”,應(yīng)用程序就會(huì)開(kāi)始收集數(shù)據(jù)。最后可以直接在 Visual Studio 2017 中查看應(yīng)用程序的性能,也包括所有日志消息。
Razor 引擎已經(jīng)更新,現(xiàn)在已經(jīng)可以使用新的 Roslyn 編譯器,包括支持 C#7.1 功能,如默認(rèn)表達(dá)式,推斷元組名稱(chēng)和泛型模式匹配。要在項(xiàng)目中使用 C#7.1 功能,需要在項(xiàng)目文件中添加以下屬性,然后重新加載解決方案:
latest
主機(jī)配置得到了大大簡(jiǎn)化。默認(rèn)的 ASP.NET Core 模板中包含了一個(gè)新的 WebHost.CreateDefaultBuilder,它會(huì)自動(dòng)分配一個(gè) Kestrel 服務(wù)器。如果 Kestrel 服務(wù)器可用,那它就會(huì)在 IIS 上運(yùn)行,并且配置標(biāo)準(zhǔn)的控制臺(tái)日志記錄。Program.cs 文件已經(jīng)簡(jiǎn)化為以下內(nèi)容:
public class Program { public static void Main(string[] args) { BuildWebHost(args).Run(); } public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup() .Build(); }
ASP.NET Core 2.0 不但帶來(lái)了巨大的性能提升,而且該版本的更新還提供了編寫(xiě)應(yīng)用程序的新方法,同時(shí)簡(jiǎn)化了管理應(yīng)用程序的操作過(guò)程。這些都構(gòu)成了大家將代碼遷移到 ASP.NET Core 2.0 的理由。
參考文章:
https://dzone.com/articles/4-benefits-of-migrating-to-aspnet-core-20
https://blogs.msdn.microsoft.com/webdev/2017/08/14/announcing-asp-net-core-2-0/
轉(zhuǎn)載請(qǐng)注明出自:葡萄城控件
葡萄城是全球控件行業(yè)領(lǐng)導(dǎo)者,世界領(lǐng)先的企業(yè)應(yīng)用定制工具、企業(yè)報(bào)表和商業(yè)智能解決方案提供商,為超過(guò)75%的全球財(cái)富500強(qiáng)企業(yè)提供服務(wù)。