Asp.net-core-project-json

提供:Dev Guides
移動先:案内検索

ASP.NET Core-Project.Json

この章では、 project.json ファイルについて説明します。 このファイルはJavaScriptオブジェクト表記法を使用して構成情報を保存し、実際に.NETアプリケーションの中心となるのはこのファイルです。 このファイルがなければ、ASP.NET Coreプロジェクトはありません。 ここでは、このファイルの最も重要な機能のいくつかについて説明します。 project.json ファイルをダブルクリックします。

プロジェクトJSonをダブルクリック

現在、project.jsonファイルのデフォルトのコード実装は次のとおりです-

{
   "dependencies": {
      "Microsoft.NETCore.App": {
         "version": "1.0.0",
         "type": "platform"
      },
      "Microsoft.AspNetCore.Diagnostics": "1.0.0",
      "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
      "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
      "Microsoft.Extensions.Logging.Console": "1.0.0"
   },
   "tools": {
      "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
   },
   "frameworks": {
      "netcoreapp1.0": {
         "imports": ["dotnet5.6", "portable-net45+win8"]
      }
   },
   "buildOptions": {
      "emitEntryPoint": true,
      "preserveCompilationContext": true
   },
   "runtimeOptions": {
      "configProperties": {
         "System.GC.Server": true
      }
   },
   "publishOptions": {
      "include": ["wwwroot", "web.config" ]
   },
   "scripts": {
      "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath%
         --framework %publish:FullTargetFramework%" ]
   }
}

ご覧のとおり、このファイルの上部にバージョン情報があります。 これは、ビルド時にアプリケーションが使用するバージョン番号です。

  • バージョンは1.0.0ですが、このファイルの最も重要な部分は依存関係です。
  • アプリケーションで有用な作業を行う場合は、データベースとの間でデータを保存および取得したり、複雑なHTMLをレンダリングしたりするなど、その作業を行うライブラリとフレームワークが必要になります。
  • このバージョンのASP.NET Coreでは、依存関係はすべてNuGetパッケージマネージャーを介して管理されます。
  • NuGetは数年前から.NETスペースに存在していましたが、現在、すべての依存関係を管理する主な方法は、NuGetパッケージとしてラップされたライブラリとフレームワークを使用することです。
  • アプリケーションに必要なトップレベルのNuGetパッケージはすべて、このproject.jsonファイルに保存されます。
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0

このファイルにいくつかの依存関係があることがわかります。ASP.NETの最終リリースでは、おそらく正確な依存関係が変更されるでしょう。 ASP.NET MVCフレームワークのように新しい依存関係を追加する場合、このproject.jsonファイルに簡単に入力すると、パッケージ名だけでなくバージョン番号も含めた IntelliSense ヘルプが表示されます。次のスクリーンショットに示します。

IntelliSense

ソリューションエクスプローラーで[参照設定]を右クリックし、[NuGetパッケージの管理]を選択して、UIを使用することもできます。 現在インストールされているパッケージを確認できます。

インストール済みパッケージ

これらのパッケージは、project.jsonファイルにあるものと同じものです。また、ブラウザーに移動して、プレリリースパッケージを含む他のパッケージ(このプロジェクトにインストールされたMVCフレームワークなど)を追加することもできます。

MVCフレームワーク

[インストール]ボタンを使用して今すぐこのパッケージをインストールすると、このパッケージはproject.jsonに保存されます。 フレームワークセクションは、project.jsonの別の重要な部分です。このセクションは、アプリケーションが使用できる.NETフレームワークについてASP.NETに指示します。

"frameworks": {
   "netcoreapp1.0": {
      "imports": [
         "dotnet5.6",
         "portable-net45+win8"
      ]
   }
},

この場合、「 netcoreapp1.0 」がプロジェクトで使用されるフレームワークであることがわかります。また、Visual Studioのインストール時にインストールされる完全な.NET Frameworkを含めることもできます。

  • 多くのバージョンのWindowsオペレーティングシステムに含まれているのは、同じ.NET Frameworkです。
  • 15年前から存在する.NET Frameworkであり、Webプログラミングからデスクトッププログラミングまですべてを実行するフレームワークが含まれています。
  • Windowsでのみ機能する巨大なフレームワークです。
  • *「netcoreapp1.0」*は.NET Coreフレームワークです。 これはクロスプラットフォームフレームワークであり、WindowsだけでなくOS XやLinuxでもさまざまなプラットフォームで動作します。
  • このフレームワークは、完全な.NETフレームワークよりも機能が少ないですが、ASP.NET Core Web開発に必要なすべての機能を備えています。