Exemple #1
0
        private void AddHeader(NameValueUnit header)
        {
            if (string.IsNullOrWhiteSpace(header.Name))
            {
                throw new ArgumentException($"Header {nameof(header.Name)} cannot be null or empty.");
            }

            if (header.Value == null)
            {
                return;
            }

            headers.Add(header);
        }
Exemple #2
0
        private void AddQueryString(NameValueUnit queryString, bool isValueEncoded)
        {
            if (string.IsNullOrWhiteSpace(queryString.Name))
            {
                throw new ArgumentException($"Querystring {nameof(queryString.Name)} cannot be null or empty.");
            }

            if (queryString.Value == null)
            {
                return;
            }

            if (!isValueEncoded)
            {
                queryString.Value = Uri.EscapeDataString(queryString.Value);
            }

            queryParams.Add(queryString);
        }
Exemple #3
0
        public static NameValueUnit[] FromDictionary(IDictionary <string, string> data)
        {
            var result = new NameValueUnit[data.Count];

            var index = 0;

            foreach (var item in data)
            {
                result[index] = new NameValueUnit
                {
                    Name  = item.Key,
                    Value = item.Value
                };

                index++;
            }

            return(result);
        }
Exemple #4
0
        public static NameValueUnit[] FromDto <T>(T data)
        {
            var properties = data.GetType().GetProperties().Where(x => x.CanRead).ToArray();

            var result = new NameValueUnit[properties.Length];

            for (var i = 0; i < properties.Length; i++)
            {
                var prop = properties[i];

                var value = prop.GetValue(data)?.ToString();

                result[i] = new NameValueUnit
                {
                    Name  = prop.Name,
                    Value = value
                };
            }

            return(result);
        }