web-dev-qa-db-ja.com

.NETコアとASP.NETコア

.NET CoreとASP.NET Coreの違いは何ですか?

それらは相互に排他的ですか?私は、asp.netコアが.netコア上に構築されていると聞きましたが、完全な.netフレームワーク上に構築することもできます。

では、ASP.NET Coreとは一体何なのでしょうか。

104
blubberbo

.NET Coreはランタイムです。それ用に構築されたアプリケーションを実行できます。

ASP.NET Coreは、Webアプリケーションを構築するためのフレームワークを形成するライブラリの集まりです。 ASP.NET Coreライブラリは、.NET Coreと "Full .NET Framework"(何年もの間Windowsに同梱されているもの)の両方で使用できます。

分かりにくいのは、ASP.NET Coreのライブラリとツールを使用するアプリケーションは通常「ASP.NET Core Application」と呼ばれることです。したがって、 "ASP.NET Core Application"はalso".NET Core Application"または ".NET Framework Application"です。

この画像は関連する技術の関係を示しています( このブログ記事から取られています.NET Web Application Technologies

ここでは、ASP.NET Coreが.NET Frameworkと.NET Coreの両方の上に構築されているのに対し、 "ASP.NET"(現在は "クラシックASP.NET"と呼ばれることが多い)は.NET Frameworkのみであることがわかります。

123
Martin Ullrich

ASP.NET CORE.NET Coreを使用 - すべての依存関係は自己完結型で、ほとんどのnugetパッケージを使用できますが、windowsは使用できません。特定のパッケージ、Windows、Linux、Mac上で実行可能

ASP.NET CORE.NET Frameworkを使用 - ほとんどの依存関係は自己完結型で、Windows上でのみ実行されます。 Windows固有のnugetパッケージは、マシンにインストールされているターゲットとなる.netフレームワークのバージョンが必要です。

22
Nathan Alard

ASP.NET Coreは.Net Coreでサポートされているワークロードの1つです https://docs.Microsoft.com/ja-jp/dotnet/articles/core/#workloads

.NET Core自体には、ツール、ローカルサービス、およびテキストベースのゲームに役立つ単一のアプリケーションモデル(コンソールアプリケーション)が含まれています。次のような機能を拡張するために、.NET Coreの上に追加のアプリケーションモデルが構築されています。

  • ASP.NETコア
  • Windows 10ユニバーサルWindowsプラットフォーム(UWP)
  • Xamarin.Forms
15
v-andrew

.NET Coreは、Windows、Linux、およびmacOSオペレーティングシステム用の無料のオープンソース管理コンピュータソフトウェアフレームワークです。

ASP.NET Coreは.NET Coreまたは.NET Frameworkをターゲットにできます。 .NET FrameworkをターゲットにしたASP.NET Coreアプリケーションはクロスプラットフォームではなく、Windows上でのみ動作します。一般に、ASP.NET Coreは.NET Standardライブラリで構成されています。 .NET Standard 2.0で作成されたライブラリは、.NET Standard 2.0を実装するすべての.NETプラットフォームで動作します。

3
sajadre

最近の情報.NET Frameworkはそれの最後のリリースです。 4.8の後に別のものはありません。マイクロソフトは.NET Coreを継続します。この時点からあなたはあなたのプロジェクトで.NET Coreを好むはずです。

1
Sinan Bozkuş