public static async Task <TResponse> PostAsync <TRequest, TResponse>(
            this IMediator mediator, TRequest resource, string resourceUri, params object[] args)
            where TRequest : class
        {
            var request = new PostRequest <TRequest, TResponse>(resource);

            request.SetResourceUri(resourceUri, args);
            var response = await mediator.SendAsync(request);

            return(response.Resource);
        }