如果已安装.NET Core SDK,是否需要安装.NET Core运行时?

如果已安装.NET Core SDK,是否需要安装.NET Core运行时?,sdk,.net-core,runtime,Sdk,.net Core,Runtime,我将在目标机器的同一台机器上开发我的应用程序。我安装了SDK。我也需要安装运行时吗?否 NET核心运行时包括一个虚拟机(又名CoreCLR)和库的实现(又名CoreFX) NET Core SDK包含编译器和各种其他工具来编译代码,以便执行。.NET Core SDK至少已经包含一个运行时版本:它本身是用C#编写的,需要一个.NET Core运行时才能运行 如果您希望针对.NET Core SDK附带的运行时版本以外的其他版本,则必须单独安装该版本 例如,如果下载.NET Core 2.1.40

我将在目标机器的同一台机器上开发我的应用程序。我安装了SDK。我也需要安装运行时吗?

NET核心运行时包括一个虚拟机(又名CoreCLR)和库的实现(又名CoreFX)

NET Core SDK包含编译器和各种其他工具来编译代码,以便执行。.NET Core SDK至少已经包含一个运行时版本:它本身是用C#编写的,需要一个.NET Core运行时才能运行

如果您希望针对.NET Core SDK附带的运行时版本以外的其他版本,则必须单独安装该版本

例如,如果下载.NET Core 2.1.401SDK,将获得.NET Core 2.1.3运行时。如果您想(出于某种原因)以.NET Core 2.0运行时为目标,则需要单独安装


(警告:您实际上不希望以2.0为目标。它将在几个月内失去支持,而2.1将在几年内得到支持。)。

如果您在IIS中运行ASP.NET核心应用程序,您可能需要运行时安装


我们只在Windows Server 2016上安装了Core 2.2的SDK。通过IIS运行ASP.NET核心应用程序时返回500服务器错误。然后我们安装了运行时,应用程序运行良好。运行时的宿主捆绑包组件安装ASP.NET Core IIS模块,该模块将IIS链接到.NET Core应用程序。至少在我们的例子中,只安装SDK并没有安装该模块,而运行时安装了。

您不需要。为什么?如果我是对的,开发应用程序需要SDK,运行应用程序需要运行时。SDK包含自己的运行时。值得注意的是,如果您需要托管捆绑包,则SDK中不包含该捆绑包,因此您需要安装运行时。这似乎在2.2.4中是正确的(至少如此)。