示例#1
0
        private string NotifyBrand(NotifactionData notification, string url)
        {
            var data = new NameValueCollection();

            data.Add("OrderIdOfGateway", notification.OrderIdOfGateway);
            data.Add("OrderIdOfMerchant", notification.OrderIdOfMerchant);
            data.Add("OrderIdOfRouter", notification.OrderIdOfRouter);
            data.Add("PayMethod", notification.PayMethod);
            data.Add("Language", notification.Language);
            data.Add("Signature", notification.Signature);

            using (var webClient = new WebClient())
            {
                webClient.Headers.Add("user-agent", UserAgent);
                try
                {
                    byte[] bytes    = webClient.UploadValues(url, data);
                    var    response = Encoding.UTF8.GetString(bytes);
                    var    notified = Acknowledge.Equals(response, StringComparison.OrdinalIgnoreCase);
                    if (notified)
                    {
                        return(String.Format("{0}", response));
                    }
                    else
                    {
                        return(String.Format("Failed,response should be 'SUCCESS',but '{0}'", response));
                    }
                }
                catch (Exception ex)
                {
                    return(ex.Message);
                }
            }
        }
示例#2
0
        private NotifactionData GenerateNotification(PayFormData request)
        {
            var orderId  = DateTime.Now.ToString("yyyyMMddHHmmss");
            var response = new NotifactionData
            {
                Language          = request.Language,
                OrderIdOfGateway  = "GOID" + orderId,
                OrderIdOfMerchant = request.OrderId,
                OrderIdOfRouter   = "ROID" + orderId,
                PayMethod         = request.Method,
            };

            response.Signature = GetMD5HashInHexadecimalFormat(response.SignParams + OnlineDepositKey);
            return(response);
        }