コード例 #1
0
    public static async Task <ApiResult <T> > ApiCacheAsync <T>(this IHasJsonApiClient instance, IReturn <T> requestDto)
    {
        if (ApiResultsCache <T> .Instance != null)
        {
            return(ApiResultsCache <T> .Instance);
        }

        var api = await instance.Client !.ApiAsync(requestDto);

        if (api.Succeeded)
        {
            ApiResultsCache <T> .Instance = api;
        }
        return(api);
    }
コード例 #2
0
 public static async Task <ApiResult <EmptyResponse> > ApiAsync(this IHasJsonApiClient instance, IReturnVoid request) =>
 await instance.Client !.ApiAsync(request);
コード例 #3
0
 public static async Task <TResponse> SendAsync <TResponse>(this IHasJsonApiClient instance, IReturn <TResponse> request) =>
 await instance.Client !.SendAsync(request);
コード例 #4
0
 public static Task <ApiResult <AppMetadata> > ApiAppMetadataAsync(this IHasJsonApiClient instance, bool reload = false) =>
 !reload?instance.ApiCacheAsync(new MetadataApp()) : instance.Client !.ApiAsync(new MetadataApp());