Exemple #1
0
        public static bool ValidateParameter(BaseECPayLogisticsRequest request)
        {
            var parameter = ModelHelper.ToDictionary(request);

            //all the parameter shound be passed
            return(parameter.All(validateParameter));
        }
Exemple #2
0
        protected virtual HttpResponseMessage GetResponse(string url, BaseECPayLogisticsRequest request)
        {
            ApplySettingToRequest(request);

            //Check parameter valid
            ValidatorChecker.ValidateParameter(request);

            //converto request to form
            var httpContent = HttptHelper.ConvertObjectToForm(request);

            //prepare
            _webClient.BaseAddress = new Uri(url);
            _webClient.DefaultRequestHeaders.Accept.Clear();

            //query
            HttpResponseMessage httpResponse = _webClient.PostAsync("", httpContent).Result;

            return(httpResponse);
        }
Exemple #3
0
        protected virtual Response <string> GetData(string url, BaseECPayLogisticsRequest request, Func <string, string> convert = null)
        {
            var httpResponse = GetResponse(url, request);
            var response     = new Response <string>();

            if (httpResponse.IsSuccessStatusCode)
            {
                //Prepare data
                var stringData = httpResponse.Content.ReadAsStringAsync().Result;

                //apply data
                response.Data      = stringData;
                response.IsSuccess = true;
            }
            else
            {
                response.ErrorMessage = httpResponse.Content.ReadAsStringAsync().Result;
            }

            return(response);
        }
Exemple #4
0
        protected virtual Response <T> GetData <T>(string url, BaseECPayLogisticsRequest request, Func <string, T> convert = null)
            where T : class, new()
        {
            var httpResponse = GetResponse(url, request);
            var response     = new Response <T>();

            if (httpResponse.IsSuccessStatusCode)
            {
                //Prepare data
                var stringData = httpResponse.Content.ReadAsStringAsync().Result;

                //apply data
                response.Data = convert != null?convert.Invoke(stringData) : ConvertResultToObject <T>(stringData);

                response.IsSuccess = true;
            }
            else
            {
                response.ErrorMessage = httpResponse.Content.ReadAsStringAsync().Result;
            }

            return(response);
        }
Exemple #5
0
 protected void ApplySettingToRequest(BaseECPayLogisticsRequest request)
 {
     request.HashKey    = _settings.HashKey;
     request.HashIV     = _settings.HashIV;
     request.MerchantID = _settings.MerchantID;
 }