我有一个常规问题,就是ASP.NET WebMethod是否总是以“json”形式返回数据。如果不是,WebMethod的默认返回数据类型是什么?
我想知道是否有一种方法可以从WebMethod中获取“HTML”而不是“json”的数据?
谢谢
PageMethods是ASP.NET AJAX框架(ScriptManager)的一部分。
默认情况下,ASP.NET AJAX使用JSON而不是SOAP。
这是有意设计的,主要是因为ASP.NET AJAX Javascript库经过优化,可以处理JSON对象。
您可以通过在Web方法上指定[ResponseFormat]属性来覆盖此默认设置。
像这样:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Xml)]
public XmlElement GetFoo(string url)
{
这里有一篇不错的文章,介绍了PageMethods和启用ASP.NET AJAX的Web服务。
默认的Web服务应该返回SOAP格式(一种XML格式),对于WCF,有一个REST包可以将其返回类型更改为JSON。
[http://msdn.microsoft.com/en-us/netframework/cc950529.aspx][1]
希望这能有所帮助。