/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="request"></param> /// <param name="config"></param> /// <param name="url"></param> /// <param name="isUseCert"></param> /// <param name="timeout"></param> /// <returns></returns> public static async Task <T> ExecuteAsync <T>(IWechatRequest <T> request, WechatpayConfig config, string url, bool isUseCert = false, int timeout = 6) { var requestData = new WechatpayData(); requestData.FromObject(request); var response = await ExecuteAsync(requestData, config, url, isUseCert, timeout); return(response.ToObject <T>()); }
/// <summary> /// 下载对账单 /// </summary> /// <param name="request">提交给下载对账单API的参数</param> /// <param name="config"></param> /// <param name="timeOut">接口超时时间</param> /// <returns></returns> public static async Task <WechatTradeDownloadResponse> DownloadBillAsync(WechatTradeDownloadRequest request, WechatpayConfig config, int timeOut = 6) { //检测必填参数 if (string.IsNullOrEmpty(request.BillDate)) { throw new Exception("对账单接口中,缺少必填参数bill_date!"); } var requestData = new WechatpayData(); requestData.FromObject(request); var response = await HttpService.ExecuteAsync(requestData, config, WechatConstants.DownloadBillUrl, false, timeOut);//调用HTTP通信接口以提交数据到API var result = response.ToObject <WechatTradeDownloadResponse>(); if (result.ReturnCode != WechatConstants.SUCCESS && result.ResultCode != WechatConstants.SUCCESS) { throw new Exception(result.ReturnMsg); } result.Body = response.ToXml(); return(result); }