public Task <string> BuildUrl(WechatPayNativePayOneRequest request)
        {
            string url     = GetRequestUrl(Config);
            var    builder = new WechatPayParameterBuilder(Config);

            if (_extParam != null && _extParam.Any())
            {
                foreach (var item in _extParam)
                {
                    builder.Add(item.Key, item.Value);
                }
            }
            InitBuilder(builder, request);
            url = $"{url}?{builder.ToUrl()}";
            return(Task.FromResult <string>(url));
        }
 protected virtual void InitBuilder(WechatPayParameterBuilder builder, WechatPayNativePayOneRequest param)
 {
     builder.AppId(Config.AppId).MerchantId(Config.MerchantId).Add("time_stamp", DateTime.Now.GetUnixTimestamp())
     .ProductId(param.ProductId).NonceStr(Id.GetId());
 }