Kaynağa Gözat

更新 GetSpecialNumberAsync 方法以支持 CancellationToken

将 GetSpecialNumberAsync 和 GetSpecialNumberByAsync 方法中的 FirstAsync 调用改为带有 CancellationToken 参数的版本。
删除了在数据为空时抛出 UserFriendlyException 异常的代码,改为返回一个新的 SpecialNumberInfoDto 对象。
xf 1 ay önce
ebeveyn
işleme
6cdfe1ae01

+ 4 - 6
src/Hotline.Application/SpecialNumber/SpecialNumberApplication.cs

@@ -138,9 +138,8 @@ namespace Hotline.Application.SpecialNumber
         public async Task<SpecialNumberInfoDto> GetSpecialNumberAsync(string Id, CancellationToken cancellationToken)
         {
             var data = await _specialNumberRepository.Queryable()
-                .Where(x => x.Id == Id).FirstAsync();
-            if (data == null)
-                throw UserFriendlyException.SameMessage("特殊号码查询失败");
+                .FirstAsync(x => x.Id == Id, cancellationToken);
+            if (data == null) return new();
             return _mapper.Map<SpecialNumberInfoDto>(data);
         }
 
@@ -156,9 +155,8 @@ namespace Hotline.Application.SpecialNumber
         public async Task<SpecialNumberInfoDto> GetSpecialNumberByAsync(string PhoneNumber, CancellationToken cancellationToken)
         {
             var data = await _specialNumberRepository.Queryable()
-                .Where(x => x.PhoneNumber == PhoneNumber).FirstAsync();
-            if (data == null)
-                throw UserFriendlyException.SameMessage("特殊号码查询失败");
+                .FirstAsync(x => x.PhoneNumber == PhoneNumber, cancellationToken);
+            if (data == null) return new();
             return _mapper.Map<SpecialNumberInfoDto>(data);
         }