C# Winform中执行post操作并获取返回的XML类型的数据

         /// <summary>
         /// 返回指定日期的订单数据
          /// </summary>
        /// <param name="StartDate">起始日期</param>
        /// <param name="EndDate">结束日期</param>
        /// <returns>DataTable</returns>
        public System.Data.DataTable GetOrderDt(DateTime StartDate, DateTime EndDate)
        {
            try
            {
                dllEncrypt des = new dllEncrypt();
                string strStartDate = des.Get_Time_String(StartDate);
                string strEndDate = des.Get_Time_String(EndDate);
                WebClient web = new WebClient();
                //设置post的参数
                System.Collections.Specialized.NameValueCollection PostData = new System.Collections.Specialized.NameValueCollection();
                PostData.Add("stime", strStartDate);//将textBox1中的数据变为用a标识的参数,并用POST传值方式传给网页 ­
                  PostData.Add("etime", strEndDate);
                //获取返回的数据
                  byte[] byRemoteInfo = web.UploadValues(GetUrl(), "POST", PostData);
                string sRemoteInfo = System.Text.Encoding.UTF8.GetString(byRemoteInfo);
                //读取字符串中的信息
                  StringReader StrStream = new StringReader(sRemoteInfo);
                //获取StrStream中的数据并存储为XML类型数据
                  XmlTextReader Xmlrdr = new XmlTextReader(StrStream);
                DataSet dss = new DataSet();
                //将数据存储到数据集中
                  dss.ReadXml(Xmlrdr);
                if (dss.Tables != null && dss.Tables.Count > 0)
                {
                    return dss.Tables[0];
                }
                else
                {
                    return null;
                }
            }
            catch (Exception ex)
            {
                return null;
            }
        }

 

posted on 2014-04-29 16:23  吴培洪  阅读(516)  评论(0编辑  收藏  举报

导航