private void SetContentType(INetRequest netRequest)
        {
            var contentTypeItem = netRequest.Parameters.LastOrDefault(m => m.ParamsOptions == ParameterOptions.Headers && m.Name == HttpR.ContentTypeKey);

            ContentType = contentTypeItem?.ContentType;

            if (string.IsNullOrEmpty(ContentType))
            {
                if (netRequest.Parameters.Any(m => m.Name == HttpR.ContentDispositionKey))
                {
                    ContentType = HttpR.FormDataContentType;
                }
                else
                {
                    ContentType = HttpR.ContentType;
                }
            }
        }
        private void AppendHeaders(INetRequest netRequest, HttpRequestMessage request)
        {
            var headers = netRequest.Parameters.Where(m => m.ParamsOptions == ParameterOptions.Headers);

            if (headers == null || !headers.Any())
            {
                return;
            }

            var contentTypeItem = headers.FirstOrDefault(m => !string.IsNullOrEmpty(m.ContentType));

            if (contentTypeItem != null)
            {
                ContentType = contentTypeItem.ContentType;
            }
            else
            {
                ContentType = string.Empty;
            }

            foreach (var item in headers)
            {
                if (!string.IsNullOrEmpty(item.ContentType))
                {
                    continue;
                }

                request.Headers.TryAddWithoutValidation(item.Name, item.Value.ToString());
            }

            #region old

            //request.Headers.TryAddWithoutValidation

            //foreach (var item in headers)
            //{
            //    HttpHeaderType
            //    switch (item.Name)
            //    {
            //        case HttpR.AcceptKey:
            //            request.Headers.Accept.TryParseAdd(item.Value.ToString());
            //            break;
            //        case HttpR.AcceptEncodingKey:
            //            request.Headers.AcceptEncoding.TryParseAdd(item.Value);
            //            break;
            //        case HttpR.AcceptLanguageKey:
            //            request.Headers.AcceptLanguage.TryParseAdd(item.Value);
            //            break;
            //        case HttpR.UserAgentKey:
            //            request.Headers.UserAgent.TryParseAdd(item.Value);
            //            break;
            //        case HttpR.RefererKey:
            //            request.Headers.Referrer = new Uri(item.Value);
            //            break;
            //        default:
            //            request.Headers.TryAddWithoutValidation(item.Name, item.Value);
            //            break;
            //    }

            //    if (!string.IsNullOrEmpty(item.ContentType))
            //    {
            //        ContentType = item.ContentType;
            //    }
            //    else
            //    {
            //        request.Headers.
            //    }
            //    switch (item.ParamsOptions)
            //    {
            //        case ParameterOptions.HttpHeader:
            //            switch (item.Name)
            //            {
            //                case HttpR.AcceptKey:
            //                    request.Headers.Accept.TryParseAdd(item.Value);
            //                    break;
            //                case HttpR.AcceptEncodingKey:
            //                    request.Headers.AcceptEncoding.TryParseAdd(item.Value);
            //                    break;
            //                case HttpR.AcceptLanguageKey:
            //                    request.Headers.AcceptLanguage.TryParseAdd(item.Value);
            //                    break;
            //                case HttpR.UserAgentKey:
            //                    request.Headers.UserAgent.TryParseAdd(item.Value);
            //                    break;
            //                case HttpR.RefererKey:
            //                    request.Headers.Referrer = new Uri(item.Value);
            //                    break;
            //                default:
            //                    request.Headers.TryAddWithoutValidation(item.Name, item.Value);
            //                    break;
            //            }
            //            break;
            //        case ParameterOptions.HttpContentHeader:
            //            request.Content.Headers.TryAddWithoutValidation(item.Name, item.Value);
            //            break;
            //        default:
            //            break;
            //    }
            //}

            #endregion
        }