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

5

我将在开发和部署目标机器上使用同一台计算机来开发我的应用程序。我已经安装了SDK,是否还需要安装运行时环境?


你不需要。 - boring91
为什么?如果我没错的话,开发需要 SDK,运行需要 Runtime。 - user7948550
1
SDK 包含自己的运行时。 - boring91
2个回答

5

不。

.NET Core运行时包含虚拟机(CoreCLR)以及库的实现(CoreFX)。

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

如果您想针对除.NET Core SDK附带的版本之外的其他版本进行目标设置,则必须单独安装该版本。

例如,如果您下载了.NET Core 2.1.401 SDK,则会获得.NET Core 2.1.3运行时。如果您想针对(由于某些原因).NET Core 2.0运行时进行目标设置,则需要单独安装该版本。

(警告:实际上您不希望将目标设置为2.0。它将在几个月后停止支持,而2.1将得到多年的支持。)


值得注意的是,如果您需要托管捆绑包,则不包括在SDK中,因此您需要安装运行时。这似乎在2.2.4中是正确的(至少)。 - Dan Soper

2
如果您在IIS中运行ASP.NET Core应用程序,则可能需要安装Runtime。
我们只在Windows Server 2016上安装了Core 2.2的SDK。在那里通过IIS运行ASP.NET Core应用程序会返回500服务器错误。然后我们安装了Runtime,应用程序就正常工作了。Runtime的Hosting Bundle组件安装了ASP.NET Core IIS模块,将IIS连接到.NET Core应用程序。至少在我们的情况下,仅安装SDK没有安装该模块,而Runtime则安装了该模块。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接