.net core 发布自包含的控制台应用程序失败

.net core 发布自包含的控制台应用程序失败,.net-core,.net Core,我安装了.netsdk2.1.301-win-x64.exe,然后将所有nuget软件包更新为2.1.1 在我的WebApp中,我有Nuget软件包Microsoft.AspNetCore.All 2.1.1和Microsft.NETCore.App 2.1.0。在Nuget窗口中,我看到还有版本2.1.1,但我无法选择它(被项目阻止) 在我的控制台应用程序中也是这样:Microsft.NETCore.App 2.1.0 我的第一个问题:这里已经出了什么问题吗?或者这是预期的行为 如果我将Web

我安装了
.netsdk2.1.301-win-x64.exe
,然后将所有nuget软件包更新为
2.1.1

在我的WebApp中,我有Nuget软件包Microsoft.AspNetCore.All 2.1.1和
Microsft.NETCore.App 2.1.0
。在Nuget窗口中,我看到还有版本2.1.1,但我无法选择它(被项目阻止)

在我的控制台应用程序中也是这样:
Microsft.NETCore.App 2.1.0

我的第一个问题:这里已经出了什么问题吗?或者这是预期的行为

如果我将WebApp构建为自包含的应用程序,那么效果会很好

如果我将控制台应用程序设置为自包含应用程序(自包含/win-x64)。我得到以下错误:

已使用Microsoft.NETCore.App版本2.1.1还原该项目, 但在当前设置下,将改用2.1.0版。到 若要解决此问题,请确保还原时使用相同的设置 以及后续操作,如生成或发布。典型的 如果在运行期间设置RuntimeIdentifier属性,则可能发生此问题 生成或发布,但不是在还原期间。”

此错误的来源是引用的项目


我做错了什么?如果您需要其他信息,请告诉我,然后我会添加它。

这是目前已知的问题。在您引用的项目的csproj文件中,设置
TargetLatestRuntimePatch
属性:

<PropertyGroup>
  <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
</PropertyGroup>

真的
只有当.NET核心应用程序引用另一个.NET核心应用程序并且自包含前滚仅在发布期间部分启动时,才会发生这种情况

对于便携式应用程序,只需将Microsoft.NETCore.App的2.1.0版本作为目标就足够了,当在目标计算机上运行时,将自动使用该计算机上可用的最新修补程序。在最近的工具中,进行了更改,以便工具将已知的最新修补程序版本用于自包含的应用程序,因此您可以OMATALY将最新的补丁版本与应用程序捆绑在一起。但是,这不会影响项目到项目的引用

有关更多信息,请参阅