namespace EventBus { /// /// 事件句柄 /// /// 事件发布数据类型 /// 事件返回数据类型 public interface IEventData : IBaseEventData { /// /// 发布同步事件 /// /// 当存在多个订阅时,只返回第一个订阅结果 /// /// 事件源 /// 事件数据 /// 筛选器 /// T Publish(object sender, TData data, Properties? properties = null); /// /// 发布异步事件 /// Task PublishAsync(object sender, TData data, Properties? properties = null); List PublishList(object sender, TData data, Properties? properties = null); Task> PublishListAsync(object sender, TData data, Properties? properties = null); /// /// 订阅事件 /// /// 事件处理函数 /// 筛选器 Guid Subscrip(Func, T> func, Properties? properties = null); /// /// 订阅事件 /// /// 事件处理函数 /// 筛选器 Guid SubscripList(Func, List> func, Properties? properties = null); } }