コード例 #1
0
        /// <summary>
        /// 查询订单
        /// </summary>
        /// <param name="request">提交给查询订单API的参数</param>
        /// <param name="config"></param>
        /// <param name="timeOut">超时时间</param>
        /// <returns>成功时返回订单查询结果,其他抛异常</returns>
        public static async Task <WechatTradeQueryResponse> OrderQueryAsync(WechatTradeQueryRequest request, WechatpayConfig config, int timeOut = 6)
        {
            //检测必填参数
            if (string.IsNullOrEmpty(request.OutTradeNo) && string.IsNullOrEmpty(request.TransactionId))
            {
                throw new Exception("订单查询接口中,out_trade_no、transaction_id至少填一个!");
            }

            var result = await HttpService.ExecuteAsync(request, config, WechatConstants.QeuryOrderUrl);

            if (result.ReturnCode != WechatConstants.SUCCESS && result.ResultCode != WechatConstants.SUCCESS)
            {
                throw new Exception(result.ReturnMsg);
            }
            return(result);
        }
コード例 #2
0
        public async Task Test2()
        {
            var config = new WechatpayConfig();

            var request = new WechatTradeQueryRequest
            {
                OutTradeNo = "202007297777"
            };

            var response = await WechatpayClient.OrderQueryAsync(request, config);

            if (string.IsNullOrEmpty(response.TransactionId))
            {
                Assert.Fail();
            }
            else
            {
                Assert.Pass();
            }
        }