“不支持”在不指定 RuntimeIdentifier 的情况下构建或发布自包含应用程序
Posted
技术标签:
【中文标题】“不支持”在不指定 RuntimeIdentifier 的情况下构建或发布自包含应用程序【英文标题】:It is "not supported" to build or publish a self-contained application without specifying a RuntimeIdentifier 【发布时间】:2020-10-12 12:59:14 【问题描述】:使用最新的 Visual Studio 2019 我正在尝试为 DotNetCore 3.1 WPF 应用程序发布 Msix 安装程序。应用程序可以正确构建和运行,但是当我尝试发布应用程序时出现此错误
It is not supported to build or publish a self-contained application without specifying a RuntimeIdentifier.
我的 UI 项目 csproj 看起来像这样。
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<UseWPF>true</UseWPF>
<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
<SelfContained>false</SelfContained>
</PropertyGroup>
如何解决这个问题?
编辑:所以事实证明,只有当我将我自己托管的 asp.net 核心项目包含在我试图打包的 gui 项目中时,才会出现问题。
什么可能导致此问题?是不是因为某种原因不支持打包那种项目?
【问题讨论】:
【参考方案1】:请删除PropertyGroup中的RuntimeIdentifier和SelfContained设置,然后在cmd.exe中输入dotnet publish -f netcoreapp3.1 -r win10-x64 --self-contained false
【讨论】:
我试过这个,这就是我得到的结果。 pastebin.com/TehQtSix 这是详细版本的结尾pastebin.com/YCRetmHi 所以事实证明,只有当我将我的自托管 asp.net 核心项目包含在我试图打包的 gui 项目中时,才会出现问题。什么可能导致此问题?是不是因为某种原因不支持打包那种项目? 你是如何将 asp.net core 项目包含在 gui 项目中的?我需要详细信息来重现错误。 asp.net核心项目被wpf gui项目作为项目引用引用。 wpf gui 项目自己托管 asp.net 项目。如果我删除这个引用(以及调用它的几行代码),那么它会正确打包。 您需要更多信息吗?我想不出还有什么要补充的。以上是关于“不支持”在不指定 RuntimeIdentifier 的情况下构建或发布自包含应用程序的主要内容,如果未能解决你的问题,请参考以下文章