var assemblies = new[]{ typeof(UserHandler).Assembly};builder.Services.AddEventBus(assemblies);
程序集: 手动指定Assembly集合 -> MasaApp.GetAssemblies() -> AppDomain.CurrentDomain.GetAssemblies()
但由于NetCore按需加载,未使用的程序集在当前域中不存在,因此可能会导致部分事件以及Handler的对应关系未正确保存,因此可通过手动指定Assembly集合或者修改全局配置中的Assembly集合来修复这个问题
- 通过EventBus发布事件,Handler出错,但数据依然保存到数据库中
- DisableRollbackOnFailure是否为true (是否失败时禁止回滚)
- UseTransaction是否为false (禁止使用事务)
本章源码Assignment11
https://github.com/zhenlei520/MasaFramework.Practice
开源地址MASA.Framework:https://github.com/masastack/MASA.Framework
MASA.EShop:https://github.com/masalabs/MASA.EShop
MASA.Blazor:https://github.com/BlazorComponent/MASA.Blazor
如果你对我们的 MASA Framework 感兴趣,无论是代码贡献、使用、提 Issue,欢迎联系我
经验总结扩展阅读
- YC-Framework版本更新:V1.0.10
- 从 QFramework 重新开始
- reportportal 集成 robotframework 自动化执行及结果可视化
- MasaFramework -- 缓存入门与设计
- MasaFramework -- 缓存入门与规则配置
- MasaFramework -- 异常处理
- .Net Framework中的AppDomain.AssemblyResolve事件的常见用法、问题,以及解决办法
- net framework 3.5有什么用
- net40是什么