DefaultQueryResult.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. namespace Blue
  3. {
  4. /// <summary>
  5. /// 默认查询结果类,继承IQueryResult<R>
  6. /// ① 添加查询成功事件
  7. /// ② 添加查询失败事件
  8. /// ③ 触发成功事件
  9. /// ④ 触发失败事件
  10. /// </summary>
  11. public class DefaultQueryResult<R> : IQueryResult<R>
  12. {
  13. private Action<R> mOnQuerySucceed;
  14. private Action mOnQueryFailed;
  15. /// <summary>
  16. /// 添加查询成功事件
  17. /// </summary>
  18. public void OnQuerySucceed(Action<R> onQuerySucceed)
  19. {
  20. mOnQuerySucceed += onQuerySucceed;
  21. }
  22. /// <summary>
  23. /// 添加查询失败事件
  24. /// </summary>
  25. public void OnQueryFailed(Action onQueryFailed)
  26. {
  27. mOnQueryFailed += onQueryFailed;
  28. }
  29. public void TriggerSuccess(R result)
  30. {
  31. mOnQuerySucceed?.Invoke(result);
  32. }
  33. public void TriggerFailed()
  34. {
  35. mOnQueryFailed?.Invoke();
  36. }
  37. }
  38. }