Asp.net 如何让Ajax.NETPageMethod返回JSON

Asp.net 如何让Ajax.NETPageMethod返回JSON,asp.net,ajax,json,pagemethods,Asp.net,Ajax,Json,Pagemethods,我使用AJAX.Net调用ASP.Net PageMethod,它返回JSON序列化的JSON数据 {"d":"[{\"Fromaddress\":\"testfrom1@test.com\",\"Toaddress\":\"testto1@test.com\"},{\"Fromaddress\":\"testfrom2@test.com\",\"Toaddress\":\"testto2@test.com\"}]"} 响应头将内容类型声明为 "Content-Type applicati

我使用AJAX.Net调用ASP.Net PageMethod,它返回JSON序列化的JSON数据

{"d":"[{\"Fromaddress\":\"testfrom1@test.com\",\"Toaddress\":\"testto1@test.com\"},{\"Fromaddress\":\"testfrom2@test.com\",\"Toaddress\":\"testto2@test.com\"}]"}
响应头将内容类型声明为

"Content-Type   application/json; charset=utf-8"
但是,数据只是作为字符串提供的,并且似乎不能作为javascript中的JSON数据提供。我需要做什么来处理从javascript返回的JSON数据

var myData = eval('(' + text + ')');
尽管这可能是一种安全风险。相反,您可能希望使用JSON解析器,比如这个可用的表单

然后你会得到这样的符号:

var myData = JSON.parse(text);

有关此特定解析器的更多信息,请参阅。。。我相信还有其他方法可供选择,它们的工作原理非常相似。

此外,这是一个关于如何使用浏览器内置JSON解析的有用链接:在javascript中使用
PageMethods.Function()
语法时,数据将自动转换为对象