asp.net如何给ajax返回XML数据

我是翔子 2009-03-16 10:21:49
在.ashx页面中,怎么样给ajax返回XML数据~

public void ProcessRequest (HttpContext context) {
string chid=context.Request.Params["Chid"];
DataTable dt = new DataTable();

....(将datatable转换成了XML字符串)

context.Response.Write("<?xml version='1.0' encoding='utf-8'?>");
context.Response.Write(CDataToXml(dt)); //如果这样返回能行吗?
}

这样返回的话,感觉虽然是按照XML写法返回的,但是其实是text类型的吧~~火狐浏览器可以以xml的方式去解析,但是IE不行,不知道这样返回是不是正确的~?

还有。如果是返回json的话,该怎么写呢~????
...全文
815 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yj605528638 2009-03-22
  • 打赏
  • 举报
回复
值得一学习
lfywy 2009-03-17
  • 打赏
  • 举报
回复
学习
  • 打赏
  • 举报
回复
关注
我是翔子 2009-03-17
  • 打赏
  • 举报
回复
解决了,是1楼说的方法,不能写成

context.Response.ContentType = "xml";

必须要是

context.Response.ContentType = "text/xml";

就OK了~
小_虎 2009-03-16
  • 打赏
  • 举报
回复
关注。
virgo2008 2009-03-16
  • 打赏
  • 举报
回复
你可以试试先将它以XML的形式写到txt里面去,然后返回一个值,ajax收到这个值以后就从指定的文本中去读取,我想这个方法在IE下应该可以行的吧
我是翔子 2009-03-16
  • 打赏
  • 举报
回复
我加上了

context.Response.ContentType = "xml";
context.Response.Charset = "UTF-8";


还不行~这两句原来就有呢,在IE下jquery中ajax的error会弹出错误的~~~
但在火狐下可以进到success中的
重典 2009-03-16
  • 打赏
  • 举报
回复
json
ContentType = "application/json";
重典 2009-03-16
  • 打赏
  • 举报
回复
加一句
context.Response.ContentType = "text/xml";
来指定文件类型

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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