提问人:Adesh Kishore 提问时间:1/24/2022 最后编辑:Panagiotis KanavosAdesh Kishore 更新时间:1/24/2022 访问量:1206
.net 5 中不支持 System.Activities.Presentation
System.Activities.Presentation not supported in .net 5
问:
最近,我在升级助手工具的帮助下将我的 wpf 应用程序从 .net framework 4.7.2 迁移到 .net 5,但在升级 System.Activities.Presentation 后,.net 5 不支持。 请建议我如何进一步进行。
答:
3赞
Panagiotis Kanavos
1/24/2022
#1
.NET 5 是 .NET Core 5,WF 从未迁移到 .NET Core。.NET 5 中的“新增功能”页明确提到了这一点,并建议使用开源替代项 、艾尔莎工作流程。还有其他 NuGet 包,每个包都有自己独特的功能集
由于多种原因,WF 从未真正流行在 Microsoft 应用程序之外,到 2013 年基本上处于维护模式。甚至 Microsoft 产品在大约十年前就停止使用 WF - SharePoint 在 2013 年将 WF 替换为工作流管理器,甚至被 Power Automate 工作流取代。WF 工作流已于 2020 年完全删除
有一些尝试将 WF 移植到 .NET Core,例如 RPA 供应商 UiPath 的 CoreWF。不过,Github 存储库解释说这是一个实验项目。
您迟早应该认真评估迁移到其他工作流库。WF 被放弃的原因今天仍然有效:
- WF 是一个工作流引擎构造框架,而不是实际的工作流引擎。您需要投入大量精力在其上构建一个实际的工作流引擎。
- 对于 Web 应用程序来说太重了
- XML 格式太古怪了,无法使用 - 它是一种对象序列化格式,而不是工作流描述,这使得它太冗长而无法使用其他工具生成或编辑。
现在的替代方案是:
- NuGet 中的其他 .NET 工作流引擎,如 WorkflowCore 和 Elsa Workflow 仅举两个流行的包。
- 其他语言的开源工作流服务。借助 Docker 和容器,现在可以轻松地将工作流服务添加到 Web 场,即使在 Windows Server 上也是如此
- 基于云的工作流服务。
迁移到的内容将取决于应用程序类型。如果需要将工作流引擎嵌入到桌面应用程序中,则需要工作流库。如果工作流需要在服务器端运行,则可以使用工作流服务或云服务。
评论
0赞
Jim Foye
1/24/2022
关于 WF XML 是一种对象序列化格式的很好的观察。MS 称其为“XAML”,但与 WPF XAML 不同的是,您无法轻松直接编辑它。
评论