HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

用 WinForm/WPF 代码来为.NET Core 3.0 功能投票

  • 2018-08-21
  • 本文字数:936 字

    阅读完需:约 3 分钟

我们在 5 月报道过微软希望在.NET Core 3.0 上运行 WinForms 和 WPF。为了实现这个目标,他们正在构建一个新工具,该工具将允许你投票以决定他们需要把哪些 API 移植到.NET Core。但是,这不是一次直接进行的投票,而是基于你的应用程序正在使用的 API 进行的。

他们为此开发的工具叫作可移植性分析器(Portability Analyzer)。该工具的前几个版本被用于对控制台和ASP.NET 应用程序所需功能进行投票。在运行该工具的GUI 版本时,你需要选择一个目录。如果你粘贴的文件的文件名后缀为exe 和dll,那么分析器就不会正确运行。

需要提醒的是,WinForm 和WPF 不会在此计划下实现跨平台。这个计划的目的是让Windows 开发人员能够从.NET Core 的部署和性能提升中获益。

当然,这并不是说从长期来看跨平台的UI 是不可能的。他们可能会把 WinForm 的 Mono/Linux 版本移植到.NET Core ,或者基于 XAML 的 Avalonia 项目可能会越来越受欢迎。当然,从开发人员对.NET Core 3.0 公告的评论中还是可以看到人们对可用跨平台 GUI 是很感兴趣的。

目前还没有在考虑中的 API 的完整列表,不过 Immo Landwerth 分享一些信息:

从高层面来说,我们已经决定:

.NET Core 不会包含 Remoting;

不会在.NET Core 上启用部分信任 /CAS/ 沙箱操作;

不会在.NET Core 3.0 中引入 System.Web、WF 和 WCF 托管,但是,这取决于用户反馈。

我认为,几乎所有其他因素都取决于有多少人受其影响,以及我们是否能在.NET Core 3.0 中实现。

在评论中,开发人员列举了一些他们最想要的 API。Jan Friedirch 写道:

WCF 托管是把我们的应用程序移植到.NET Core 唯一缺失的东西。我们有 15 个不同的托管 WCF 的应用程序。

Ryan 回应刚才的说法:

我的大多数应用程序都没问题,但是唯一缺失的东西就是 WCF。我知道,这个还在讨论中,因此,我会全力支持它。现在,我使用双向 TCP 在一个客户端应用程序和一个远程会话中的应用程序之间进行通信。我可能会把它切换到 websocket 实现,但我希望不会立即在这上面耗费太多资源(尽管我已经在考虑这么做,因为有一个功能请求需要对服务定义进行重大修改)。

InfoQ 将在下周对服务器端 WCF 的辩论进行全面的报道。

查看英文原文: https://www.infoq.com/news/2018/08/Core-3-Portability-WPF-WinForms

感谢无明对本文的审校。

2018-08-21 09:364188
用户头像

发布了 199 篇内容, 共 85.2 次阅读, 收获喜欢 295 次。

关注

评论

发布
暂无评论
发现更多内容
用WinForm/WPF代码来为.NET Core 3.0功能投票_.NET_Jonathan Allen_InfoQ精选文章