【发布时间】:2012-01-02 13:18:41
【问题描述】:
我需要我的网络服务返回 JSON...
我的 .asmx 文件中有以下代码:
namespace Feed
{
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
public class searchPerson : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public Person GetDave()
{
Person dave = new Person();
dave.FirstName = "Dave";
dave.LastName = "Ward";
return dave;
}
}
}
返回以下内容:
<?xml version="1.0" encoding="utf-8"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
<FirstName>Dave</FirstName>
<LastName>Ward</LastName>
</Person>
如何强制它返回 JSON 而不是 XML?
【问题讨论】:
-
如果您需要 JSON 而不是 XML,为什么要定义命名空间?
-
看起来现在两者都设置好了。你能去 YourPage.asmx/js 看看 Javascript 代理脚本吗?
-
@MikeChristensen 是的,这是可能的
-
那你怎么称呼它?通常最好只包含代理 Javascript 文件,它将内容类型设置为 application/json 并正确设置所有内容。
-
@MikeChristensen 抱歉,我不确定我是如何做到的,请您解释一下。我尝试通过在jsonviewer.stack.hu 发布请求来从我的网络服务中读取数据
标签: c# json web-services asp.net-4.0