0

我使用 .NET 5 编写了一个 WPF 程序,将其打包到 MSIX 包(Release、x86 和 x64)中,作为依赖于框架的包。一切看起来都很好,但有一件非常烦人的事情:在第一次运行时,应用程序说“.NET 运行时丢失,您要安装它吗?”。如果单击“是”,下载页面将打开,用户必须在其中安装选择需要的运行时,下载安装,不是最好的用户体验,我在想怎么改进。

是否可以选择将 .net 5 运行时(x86 或 x64 取决于用户系统,或者两者都添加)作为依赖项,以便自动安装?

我知道我可以定义依赖项,但是如何找到所需依赖项的正确名称?

另外,我知道可以定义自定义安装操作,但我还没有尝试过,因为我想找到一个更简单的解决方案。看起来对于该选项,我将不得不创建一个小应用程序或脚本来检查所需的运行时是否存在,如果不存在 - 检查平台并要求用户安装特定版本的运行时。也不是最好的用户体验。

当然,我仍然可以选择自包含,但我不想每次都分发这么多兆字节的 .net,尤其是考虑到我希望经常更新的事实。

4

1 回答 1

0

幸运的是,我在techcommunity.microsoft.com上得到了答复

感谢马泰奥·帕加尼:

如果它是基于 .NET Core / .NET 5 的应用程序(我似乎从描述中了解到),通过 MSIX 分发的建议和最佳方法是使用自我部署方法。得益于差异更新和单磁盘实例等 MSIX 功能,您不必太担心增加的大小,因为运行时只会在第一次安装时下载。

依赖关系不太适合,因为还没有 .net 5 的包。

自定义安装操作是可能的,但更复杂,所以我决定使用自包含的。

于 2021-05-26T10:06:22.990 回答