代码改变世界

Abp 领域事件简单实践 <二>

2019-08-01 11:51  qgbo  阅读(296)  评论(0编辑  收藏  举报

上一篇说的是仓储增删改 的时候会自动触发领域事件。

其实也可以随时触发。

现在在应用层触发。

应用层依赖注入 EventBus

        public void Trigger()
        {
            var e = new EntityCreatingEventData<TestOrder>(new TestOrder() {  TestOrderName= "Trigger" ,TestOrderRemark="asdfff"});

            //Resolving and using in a safe way
            EventBus.Trigger(e);
        }

应用执行这个接口的时候,也会触发领域事件。谁实现了这个接口,谁就会被触发(需要进入DI框架中),比如下面的类:

   public class TestEventBus : IEventHandler<EntityCreatingEventData<TestOrder>>, ITransientDependency
    {
        public void HandleEvent(EntityCreatingEventData<TestOrder> eventData)
        {
            
        }
    }