<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          .NETTer,你必須知道——.NET 5是未來!

          共 2443字,需瀏覽 5分鐘

           ·

          2020-08-07 00:32

          喜歡就關(guān)注我們吧!


          .NET 5是.NET的未來


          ? ? ? 微軟在Build 2019大會(huì)上宣布了新的.NET 5(.NET的未來)。.NET 5將是用于構(gòu)建在所有平臺(tái)(Windows,Linux)和設(shè)備(IoT,Mobile)上運(yùn)行的應(yīng)用程序的單一統(tǒng)一平臺(tái)。

          ? ? ? ?如果您是.NET開發(fā)人員,目前支持在.NET框架中開發(fā)的企業(yè)應(yīng)用程序,那么從長(zhǎng)遠(yuǎn)來看,您需要了解.NET 5將如何影響您當(dāng)前的企業(yè)應(yīng)用程序。.Net 5基于.Net標(biāo)準(zhǔn),這意味著并非每個(gè).Net框架功能都可以在.Net5中使用。此外,還有一些技術(shù)堆棧,如Web表單,WCF和WWF沒有移植到.Net 5.我們將看看 關(guān)于.Net 5未涵蓋的內(nèi)容的細(xì)節(jié)以及有哪些替代方案。



          技術(shù)堆棧沒有進(jìn)入.NET 5


          ASP.NET Web窗體

          ? ? ? ?ASP.NET Web Forms不會(huì)出現(xiàn)在.NET 5中,微軟目前正在推薦向Blazor遷移,這是一個(gè)最近被提升為官方的實(shí)驗(yàn)性項(xiàng)目。如果你擅長(zhǎng)JavaScript,其他選擇是Angular,React和Vue SPA框架。

          ? ? ? ?如果您當(dāng)前正在使用ASP.NET MVC作為完整堆棧Web應(yīng)用程序,則可以使用ASP.NET Core MVC或.NET Core 2.0中引入的新Razor頁(yè)面繼續(xù)使用相同的堆棧,這可能與ASP類似。NET Web表單,用于快速構(gòu)建沒有視圖和控制器的Web表單應(yīng)用程序。但是,如果您正在為企業(yè)開發(fā)現(xiàn)代Web應(yīng)用程序,最好考慮單頁(yè)應(yīng)用程序,如Blazor,Angular或React,而不是傳統(tǒng)的Web應(yīng)用程序,以提供豐富的客戶端功能。


          WCFWindows Communication Foundation

          ? ? ? ?WCF將要錯(cuò)過.NET 5列車的消息讓很多人感到驚訝,包括我在內(nèi)。關(guān)于將WCF帶回.NET Core的GitHub已經(jīng)有很多討論,但微軟決定不這樣做,因?yàn)樗麄冏畛豕烙?jì)將WCF移植到.NET Core是三年。
          ? ? ? ?Microsoft建議使用gRPC作為替代方案,它是一種可在任何環(huán)境中運(yùn)行的現(xiàn)代化,開源,高性能的RPC框架。但是,與WCF不同,gRPC目前無法在IIS中托管,因?yàn)镠ttp.Sys的HTTP / 2實(shí)現(xiàn)不支持gRPC依賴的HTTP響應(yīng)尾隨標(biāo)頭


          WWF(Windows Workflow Foundation)

          ? ? ? ?Workflow Foundation沒有移植到.NET Core中。每個(gè)企業(yè)應(yīng)用程序都將具有一些與其集成的工作流程或BPM工具。如果您在應(yīng)用程序中使用了WWF,Microsoft建議您查看WF運(yùn)行時(shí)的非官方分支以移植到.NET Core中。



          即將到來的技術(shù)堆棧5


          Winforms,WPF和UWP

          ? ? ? 微軟正在推出Windows桌面包(winforms,WPF和UWP),以支持僅適用于Windows的桌面應(yīng)用程序。我不希望任何人使用winforms進(jìn)行任何新的開發(fā),但是,這將有助于將傳統(tǒng)的winforms應(yīng)用程序移植到.NET5.這并不意味著.NET Core的架構(gòu)正在發(fā)生變化。它仍然是一個(gè)跨平臺(tái)的框架,但是當(dāng)您添加桌面包時(shí),它的目標(biāo)是僅在Windows上工作。但是,將現(xiàn)有Windows桌面應(yīng)用程序移植到.NETCore中可以提供Core Runtime和API性能改進(jìn)以及部署靈活性的額外好處。



          什么被取代了


          ? ? ? ?EF核心 - 實(shí)體框架核心正在取代.NET核心框架中的EF 6。
          ? ? ? ?ASP.NET核心 - ASP.NET被ASP.NET核心取代。查看遷移指南,將ASP.NET應(yīng)用程序移植到ASP.NETCore中。

          ? ? ? ?ASP.NET Core MVC - ASP.NET Core MVC統(tǒng)一ASP.NET MVC和Web API。查看遷移指南,將asp.net mvc app移植到ASP.NETMVC中。

          MSIX - Microsoft的新打包工具,它取代了桌面應(yīng)用程序的舊MSI包安裝程序。

          ? ? JsonDocument - 來自System.Text.Json.JsonDocument API的新Json Document庫(kù)將取代json.net。它比舊的json.net快2-3倍。



          其他重要事項(xiàng)要突出


          ? ? ? ?最新版本的C#8.0引入了許多新的語言功能,包括Async Stream,Ranges,Nullable Reference Types和Pattern Matching。但是,它們將僅在.NET Core 3.0及更高版本上可用,這意味著它不會(huì)進(jìn)入舊版.NET Framework或.NET Core 2.2,2.1或1.0。它清楚地表明.NET已經(jīng)死了,.NET Core就是未來。

          ? ? ? ?如果您計(jì)劃將.NET應(yīng)用程序移植到.NETCore中,則必須分析項(xiàng)目中使用的API以查看兼容的內(nèi)容。.NET Portability Analyzer是一個(gè)有助于分析和確定應(yīng)用程序在.NET平臺(tái)上的靈活性的工具。

          ? ? ? 作為.NET開發(fā)人員,我對(duì).NET的未來及其發(fā)展方向感到興奮。我不再需要為SPA框架學(xué)習(xí)JavaScript,因?yàn)锽lazor會(huì)這樣做。?我不再需要學(xué)習(xí)Python用于機(jī)器學(xué)習(xí),因?yàn)镸L.NET會(huì)這樣做。我不再需要學(xué)習(xí)Android或Swift,因?yàn)閄amarin會(huì)這樣做。?如果您了解C#,那么現(xiàn)在您可以開發(fā)一個(gè)可以從IoT到Cloud運(yùn)行的應(yīng)用程序。?但是,這種變化將影響許多擁有基于WCF和Web窗體的產(chǎn)品/框架的企業(yè)客戶。


          瀏覽 72
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费看无码网站成人A片 | 国产资源视频 | 欧美韩国日本三级片 | 成人AV中文字幕 | 99热最新国产 |