소스 검색

解决使用异步方法时报错 does not contain a definition for 'DynamicInvokeAsync 的问题

重现问题方法:

    public async Task<TestTable> GetTestTableRecordBytestTableCode(string testTableCode)
    {
        var TestTableRecord = await _sysCacheService.AdGetAsync<TestTable>(testTableCode, async () => {
            var TestTableRecords = await _TestTableService.GetTestTableRecordListBytestTableCode(testTableCode);
            // ..... 其他一些处理 ........

            return TestTableRecords.FirstOrDefault();
        }, new TimeSpan(0,30,0)); //按照30分钟的缓存期

        return TestTableRecord;
    }
hwj 8 달 전
부모
커밋
01ad57b0fa
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      Admin.NET/Admin.NET.Core/Service/Cache/SysCacheService.cs

+ 1 - 1
Admin.NET/Admin.NET.Core/Service/Cache/SysCacheService.cs

@@ -108,7 +108,7 @@ public class SysCacheService : IDynamicApiController, ISingleton
         using (_cacheProvider.Cache.AcquireLock($@"lock:AdGetAsync:{cacheName}", 1000))
         {
             var value = Get<T>(key);
-            value ??= await ((dynamic)del).DynamicInvokeAsync(obs);
+            value ??= await ((dynamic)del).DynamicInvoke(obs);
             Set(key, value);
             return value;
         }