WPF应用程序可以在带有.Net Core 3的Linux中运行吗?

siy*_*yad 29 linux wpf desktop-application .net-core .net-core-3.0

微软宣布.Net Core 3随附WPF和Windows Forms。那么我可以使用.Net Core 3为Linux或Mac创建桌面应用程序吗?

Nev*_*ane 21

不,他们已经明确指出这些只是窗口。在.NET Core 3.0讨论之一中,他们还澄清了他们不打算将来使这些功能跨平台,因为整个概念都源自Windows特定的功能。他们讨论了跨平台应用程序的全新想法的思考,这并不容易。

资料来源:https : //youtu.be/HNLZQeu05BY

更新资料

新发布的.NET 5现在旨在通过不再称为“ .NET Core”来避免所有这些混乱。

  • 这非常令人困惑,因为dotnet核心是跨平台的,不是吗?如果它再次依赖于平台,那么走那条路线值得做什么?也与竞争有关(Java土地)。有什么想法吗?:-) (14认同)
  • .NET Core仍然是跨平台的,但是Windows桌面支持不是.NET Core的一部分,它被视为使用.NET Core的附加SDK。我想早晚有人会叉出来开始跨平台的工作,需求巨大,像Avalonia这样的单打独斗没有人手(我在某处读到,最初的WPF工作涉及将近1000名全职开发人员) 。 (5认同)
  • 起初,@ christianparpart出于相同的原因,我当时以为WPF正在成为跨平台的。但是,尽管.NET Core最初主要是跨平台的概念,但由于它是重塑,目前,它的开发要比Framework干净得多。这种方法并没有真正将.NET Core带入该路线。现在,某些依赖于Windows的东西现在变成了“更干净的Windows依赖”。他们仍在致力于跨平台桌面。需要时间,但仍然是跨平台的方向。 (2认同)
  • @ McGuireV10是的。对Windows桌面的支持将作为一组“ Windows桌面包”添加。它包含UWP,WPF和Windows窗体。仅适用于Windows。[link](https://devblogs.microsoft.com/dotnet/net-core-3-and-support-for-windows-desktop-applications/) (2认同)

小智 7

WPF或Winforms不支持。但你仍然可以开发在Linux上,使用.NET核心的桌面应用程序,使用其他库一样GtkSharp阿瓦隆尼亚


Nei*_*rao 6

好吧,这个名字本身就是 Windows Presentation Foundation。所以它主要是基于Windows的。

但值得注意的是,即将发布的新 UI 框架.NET MAUI.NET 6是跨平台的,具有单一代码库、单一项目结构。

在撰写本文时目前处于预览阶段,将于2021 年 11 月发货。这是路线图