请问asp.net中我想用datatable通过什么转换方式变成前台jquery可用的xml格式,具体的问题如下,希望给出代码

nishidawangba_2 2012-08-22 05:47:28
就是我想用asp.net做个ajax的显示,后台我能得到个datatable,前台我至少要传两个值到后台,我要用xml的方式。

后台通过怎么处理这个datatable通过response到前台,使得前台可以使用。------这个是重点

我想转换成xml,不要json,我的数据用json有问题。

希望能给出具体的代码,主要要后台的代码,前台的给出来也最好,我最少要向后台传两个值
...全文
75 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2012-08-23
  • 打赏
  • 举报
回复
将DataTable序列化为XML字符串然后输出就好了

xxxx.aspx
public string DataTableToXMLString(System.Data.DataTable dt)
{
if (dt == null) return null;
System.Text.StringBuilder sXML = new System.Text.StringBuilder();
System.IO.StringWriter sWriter = new System.IO.StringWriter(sXML);
System.Xml.XmlTextWriter xWriter = new System.Xml.XmlTextWriter(sWriter);

if (string.IsNullOrEmpty(dt.TableName)) dt.TableName = "row";
try
{
dt.WriteXml(xWriter);
return sXML.ToString();
}
catch { }
finally { sWriter.Close(); xWriter.Close(); }
return null;
}
protected void Page_Load(object sender, EventArgs e)
{
string v1=Request.Form["v1"],v2=Request.Form["v2"];
if (string.IsNullOrEmpty(v1)&&string.IsNullOrEmpty(v2)){
DataTable dt;
//通过v1,v2读取数据库填充DataTable
string xml=DataTableToXMLString(dt);/////
Response.ContentType = "text/xml";//////////
Response.Write(xml);///////
Response.End();///////
}
}


$.ajax({url:'xxxx.aspx',type:'POST',data:'v1=xxxxx&v2=xxxxxx',dataType:'xml'
,success:function(XMLDOM){/*XMLDOM就是xml的dom根节点,自己解析,不会网上查下*/}
,errof:function(xhr){alert('加载XML出错!'+xhr.responseText)}
});
nishidawangba_2 2012-08-23
  • 打赏
  • 举报
回复
自己顶下 希望有人看到

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧