现在Winforms已移植到.NET Core 3,将使用什么技术来部署这些应用程序?也可以移植ClickOnce吗?
ClickOnce使用的许多属性当前都存储在.csproj文件中,但是那些项目文件在.NET Framework和.NET Core之间发生了显着变化,因此大概需要更改Microsoft的ClickOnce代码才能使其正常工作? / p>
Microsoft对此是否有正式消息,我在文档中找不到任何内容?
答案 0 :(得分:3)
所有其他答案都回答了.NET Core 3的问题,但对于.NET 5而言,情况正在改变。微软 如本GitHub问题(2020年7月20日)所述为ClickOnce提供支持:{ {3}}
这不是完全支持(ApplicationDeployment
类将不可用),但这只是一个开始。
它似乎将从RC2开始可用-https://github.com/dotnet/deployment-tools/issues/9
答案 1 :(得分:1)
Microsoft的Scott Hunter在in the comments博客文章中的.NET Core is the Future of .NET发表了讲话。有人问他:
ClickOnce呢?那将是一个受支持的发行系统吗? .NET 5桌面应用程序?
他给的答复:
我们将建议安装和支持MSIX的MSIX 将为Windows 7添加,因此它应可在您所有平台上使用 .NET Core在其上运行。
更多详细信息MSIX可以在Microsoft's MSIX documentation和GitHub repo中找到。
也存在其他安装框架,例如Squirrel。
答案 2 :(得分:1)
如先前的回答所述, Microsoft不会继续提供Clickonce支持 ,但他们已经提供了msix作为替代。您可以使用msix软件包在组织内部内部部署.NET Core应用程序。我已经成功地将它用作Clickonce的替代品。
您可以查看我的post,其中说明了如何为.NET Core项目创建msix程序包。您甚至可以定位Windows 7 SP1和更高版本。
编辑:Microsoft将继续在.NET 5中支持ClickOnce。
答案 3 :(得分:0)
没有提及与Clickonce一起使用的.net core 3 winforms。上面提供的答案的链接指向Scott Hunter,他将其重定向到Microsoft的MSIX技术。根据我的阅读,不使用Microsoft商店而部署到最终用户的唯一方法是“侧载”您的应用程序,这似乎涉及许多步骤,即使您对软件包进行了签名,也可能使用户犹豫不决,看来用户必须启用侧载优先。不是我的用户友好想法。
答案 4 :(得分:0)
更新状态:
Microsoft宣布.NET 5.0,
一些新发布的功能还包括 ClickOnce :
“。NET Core 3.1和.NET 5.0 Windows应用现在已支持。”
您可以看看Here