post 请求 传dto对象 请求数据

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Web.Script.Serialization;

namespace iLogisticBase.Common.Setting.Dal
{
    public class vUnLoCodeBLL
    {
        public static string URL = string.Empty;

        public vUnLoCodeBLL()
        {
            URL = "";
        }

        public List<vUnLoCode> Serializer(string result)
        {
            try
            {
                JavaScriptSerializer Serializer = new JavaScriptSerializer();
                Serializer.MaxJsonLength = Int32.MaxValue;
                List<vUnLoCode> vUnLoCodes = Serializer.Deserialize<List<vUnLoCode>>(result);
                return vUnLoCodes;
            }
            catch (Exception)
            {
                return null;
            }
        }

        /// <summary>
        /// 从HttpWebResponse对象中提取响应的数据转换为字符串
        /// </summary>
        /// <param name="webresponse"></param>
        /// <returns></returns>
        public string GetResponseString(HttpWebResponse webresponse)
        {
            try
            {
                using (Stream s = webresponse.GetResponseStream())
                {
                    StreamReader reader = new StreamReader(s, Encoding.UTF8);
                    return reader.ReadToEnd();
                }
            }
            catch (Exception)
            {
                return null;
            }
        }

        /// <summary>
        /// 发送http post请求
        /// </summary>
        /// <param name="url">地址</param>
        /// <param name="parameters">查询参数集合</param>
        /// <returns></returns>
        public HttpWebResponse CreatePostHttpResponse(object dto)
        {
            try
            {
                HttpWebRequest request = WebRequest.Create(URL) as HttpWebRequest;//创建请求对象
                request.Method = "POST";//请求方式
                request.ContentType = "application/json;charset=UTF-8";//链接类型                                                                      //构造查询字符串                
                {
                    byte[] data = Encoding.UTF8.GetBytes(new JavaScriptSerializer().Serialize(dto));
                    //写入请求流
                    using (Stream stream = request.GetRequestStream())
                    {
                        stream.Write(data, 0, data.Length);
                    }
                }
                return request.GetResponse() as HttpWebResponse;
            }
            catch (Exception)
            {

                return null;
            }
        }

    }
}
 


版权声明:本文为yuzhilin1原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。