なぜASPにコードを移行する必要があるのですか?NET Core 2.0?


に従ってNET Core 2.0のリリース、.NETオープンソースはプラットフォームをまたいで新しい時代を迎えた.開発者たちは、コマンドライン、個人の好みのテキストエディタ、Visual Studio 2017 15.3、Visual Studio Codeを使用して独自の開発を選択することができる.NET Core 2.0プロジェクト.また、マイクロソフトNET開発ツールグループもASPを発表した.NET Core 2.0のリリースで、このバージョンは.NET Core 2.0、Visual Studio 2017 15.3、および新しいRazor Pagesページ最適化の例は互換性があります.現在のテクノロジーコミュニティで開発者が最も議論している問題は、コードをASP.に移行すべきかどうかです.NET Core 2.0? ”
答えは肯定的だ.
次に、コードをASPに移行する方法を見てみましょう.NET Core 2.0にはどのようなメリットがありますか?
 

パフォーマンス


性能向上はASP.NET Core 2.0がもたらす最も顕著な変化.
ASPに従う.NET Core 2.0では、新しい技術と言語の強化が登場し、コードはコンパイル時に自動的に最適化されます.
この変更がもたらすメリットは、個人がコードを変更する必要がなくなることです.コンパイラは、新しい言語拡張機能を使用して再コンパイルするときに、コードを最適化します.
TechEmpowerは、230以上のWebフレームワークの基準を使用するフレームワークのうち、ASP.NET Coreは性能の面で大きな進歩を遂げた.
 

新しいコーディングの例


ASP.NET Coreの新バージョンのリリースでは,新しい符号化例が導入された.新しい符号化例は、Model-View-Controller構造よりもページベースの設計と符号化を簡単かつ容易にする.Razor Pagesを1ページ目のページ構造として使用することで、開発者がユーザーインタフェースに集中できるようになります.
MVCのASPを構成することに詳しいならNET Core Startupクラスでは、Startupクラスに次のコードを追加できます.
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クラスのAddMvcとUseMvcは、構成呼び出しを行い、Razor Pages機能をアクティブにします.
新しいPageModelオブジェクトにより、より複雑な構造を構築できます.PageModelはMVVMアーキテクチャの概念であり、開発者がメソッドを実行し、表示中のページコンテンツに属性をバインドすることができます.
 

テンプレートの強化


ASP.NET Coreに付属するテンプレートは、MVCモードで構築されたWebアプリケーションだけでなく、Razor Pages Webアプリケーションテンプレート、およびブラウザのために単一ページアプリケーション(SPA)を構築できる一連のテンプレートを含む強化されています.これらのSPAテンプレートはJavaScriptサービス機能を使用してサーバ上でNodeJSをASP.に埋め込む.NET Coreでは、JavaScriptサーバ側のアプリケーションを.NETビルドプロセスの一部をコンパイルします.
 

DbContext Pooling


多くのASP.NET Coreアプリケーションは、DbContextタイプのサービスを登録し、事前に作成したインスタンスプールを使用してパフォーマンスを向上させるように構成することで、リクエストごとに新しいインスタンスを作成することを回避できます.
以下のコードを起動/構成サービスに追加すると、DbContext poolingが有効になります.
services.AddDbContextPool (
  options => options.UseSqlServer(connectionString)
);
 

モニタリングと構成の向上


ASP.NET Core 2.0がAzure Appサービス上で実行されている場合、変更は不要であり、統合機能も提供されます.また、Azure Application Insightsが提供するパフォーマンス分析、エラーレポート、診断結果も取得できます.Visual Studio 2017でプロジェクトを右クリックし、「Add-Application Insights Telemetry」を選択すると、アプリケーションはデータ収集を開始します.最後に、すべてのログ・メッセージを含むアプリケーションのパフォーマンスをVisual Studio 2017で直接確認できます.
 

Razor更新


Razorエンジンはすでに更新されており、デフォルト式などのC#7.1機能をサポートし、メタグループ名と汎用モードのマッチングを推定するなど、新しいRoslynコンパイラを使用することができます.プロジェクトでC#7.1機能を使用するには、プロジェクトファイルに次のプロパティを追加し、ソリューションを再ロードする必要があります.
latest
 

ホスト構成のシンプル化


ホスト構成が大幅に簡素化されました.デフォルトのASP.NET Coreテンプレートには新しいWebHostが含まれています.CreateDefaultBuilderは、Kestrelサーバを自動的に割り当てます.Kestrelサーバが使用可能な場合は、IIS上で実行され、標準のコンソール・ログ・レコードが構成されます.Program.csファイルは次のように簡略化されています.
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は、大きなパフォーマンス向上をもたらすだけでなく、このバージョンの更新により、アプリケーションを記述する新しい方法を提供し、アプリケーションの管理プロセスを簡素化します.これらはすべて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/
転載は出典を明記してください:ブドウ城のコントロール

ブドウ城について


ブドウ城は世界のコントロール業界のリーダーであり、世界をリードする企業応用カスタマイズツール、企業レポート、ビジネスインテリジェントソリューションプロバイダであり、75%を超える世界のフォーチュン500強企業にサービスを提供しています.