一个发送xml远程请求和接收xml请求结果并置入DataSet的方法

原创 2006年06月03日 12:08:00

  /// <summary>
  /// 返回查询结果
  /// </summary>
  /// <param name="RequestString">请求的字符串</param>
  /// <param name="WriteText">是否打印出表格</param>
  /// <returns></returns>
  public static System.Data.DataSet GetDataSetByRequest(string RequestString,bool WriteText)
  {
   String requestStr="http://192.168.1.1/post.aspx";

   String str="request="+RequestString; //request为请求的参数,RequestString是请求的字符串
   
   byte[] bytes = Encoding.GetEncoding("GB2312").GetBytes(str);  //可以设置编码
   WebRequest webrequest = WebRequest.Create(requestStr);   
   webrequest.Method = "POST";//请求的类型
   webrequest.Timeout = 300000;   //超时的毫秒数
   webrequest.ContentType="application/x-www-form-urlencoded";   
   System.Data.DataSet DS = new DataSet(); 
   webrequest.ContentLength=bytes.Length;
   Stream oStreamOut = null;
   try
   {
     oStreamOut = webrequest.GetRequestStream();   
   }
   catch
   {
    webrequest.Abort();
    DS.Dispose();
    System.Web.HttpContext.Current.Response.Write("请求超时,当前的字符串为:<br>" + System.Web.HttpContext.Current.Server.HtmlEncode(RequestString));
    System.Web.HttpContext.Current.Response.End();
   }
   finally
   {
    

   }
   
   oStreamOut.Write(bytes,0,bytes.Length);
   oStreamOut.Close();

   WebResponse myWebResponse = null;

   try
   {
    myWebResponse = webrequest.GetResponse();
   }
   catch
   {
    webrequest.Abort();
    DS.Dispose();
    System.Web.HttpContext.Current.Response.Write("获取返回的记录出错,当前的字符串为:<br>" + System.Web.HttpContext.Current.Server.HtmlEncode(RequestString));
    System.Web.HttpContext.Current.Response.End();
   }

   Stream streamResponse=myWebResponse.GetResponseStream();
   Encoding encode = Encoding.GetEncoding("GB2312");
   StreamReader streamRead = new StreamReader(streamResponse, encode);
   System.Xml.XmlTextReader Reader = new System.Xml.XmlTextReader(streamRead);
   DS.ReadXml(Reader);
   Reader.Close();
   streamResponse.Close();
   streamRead.Close();
   myWebResponse.Close();
   //Console.Read();     

打印返回的Datable
   if(WriteText)
   {
    System.Text.StringBuilder strT = new StringBuilder();
    for(int i=0;i<DS.Tables.Count;i++)
    {
     strT.Append("<br>Table" + i.ToString() + " " + DS.Tables[i].TableName + ":<hr><Table width=100% border=1>");
     for(int x=0;x<DS.Tables[i].Rows.Count;x++)
     {
      strT.Append("<tr>");
      for(int y=0;y<DS.Tables[i].Columns.Count;y++)
      {
       strT.Append("<td>");
       strT.Append(DS.Tables[i].Columns[y].ColumnName.ToString() + ":<br>");
       strT.Append(DS.Tables[i].Rows[x][y].ToString ());
       strT.Append("</td>");
      }
      strT.Append("</tr>");

     }
     strT.Append("</table>");
    }
    System.Web.HttpContext.Current.Response.Write(strT.ToString());
   }
   return DS;
 
  }

httpclient发送post xml请求参数据,对响应的xml做处理

httpclient发送xml的请求参数,查询到的数据也是xml,然后做处理,插入数据库 一.拼接发送的xml请求参数 1.1 定义一个实体类 1.2把请求的参数对应的封装到实体类里面,然后实...
  • rendeyishi
  • rendeyishi
  • 2017年01月11日 15:18
  • 6630

spring mvc下http发送和接收xml请求

spring mvc下http发送和接受xml请求 本文主要介绍,如何在spring mvc框架下,配合swagger插件,通过http,发送和接受xml请求。 1、通过control编写,接收xml...
  • lq18050010830
  • lq18050010830
  • 2017年12月20日 11:42
  • 241

java通过post方式发送接收xml信息

1.设置响应格式: response.setContentType("text/xml"); if(request.getMethod()==null || !request.getMeth...
  • bluetjs
  • bluetjs
  • 2014年07月04日 16:56
  • 20252

C# Post接收发送XML

C# Post接收发送XML 项目分成两个 web(ASP.Net)用户处理请求,客户端(wpf/winform)发送请求 1.web项目 有两个页面 SendPost...
  • zhihu008
  • zhihu008
  • 2015年01月27日 20:58
  • 688

C# http 发送接收xml数据

using System; using System.Collections.Generic; using System.Text; using System.Web; using Syste...
  • knight0513
  • knight0513
  • 2015年02月05日 22:26
  • 458

JAVA 获取http返回XML的数据

java 获取http方式
  • lxxmi
  • lxxmi
  • 2015年10月26日 09:45
  • 759

java socket报文通信(三)java对象和xml格式文件的相互转换

前两节讲了socket服务端,客户端的建立以及报文的封装。今天就来讲一下java对象和xml格式文件的相互转换。 上一节中我们列举了一个报文格式,其实我们可以理解为其实就是一个字符串。但是我们不...
  • hechurui
  • hechurui
  • 2016年03月21日 20:24
  • 6153

PHP 以POST方式提交XML、获取XML,最后解析XML

来自: http://blog.sina.com.cn/s/blog_43b191a901010u93.html postxml.php: // Do a POST $data="...
  • lys07962000
  • lys07962000
  • 2014年01月09日 10:08
  • 5232

C# 模拟POST提交(根据URL地址,参数以xml形式传递)

C# 模拟POST提交(根据URL地址,参数以xml形式传递)
  • vaecnfeilong
  • vaecnfeilong
  • 2014年04月29日 15:50
  • 2685

如何在WebService接收一个XML文件并解析,客户端如何发送这个XML文件?急求简单代码示例。。

客户端 xmlHttp = null; if (window.XMLHttpRequest) { // If IE7, Mozilla, Safari, and so ...
  • beyondqd
  • beyondqd
  • 2011年08月19日 20:10
  • 7758
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个发送xml远程请求和接收xml请求结果并置入DataSet的方法
举报原因:
原因补充:

(最多只允许输入30个字)