是否可以配置默认的 ASP.NET WebService 测试表单以支持 JSON?我的意思是内置在.NET框架中的测试表单......
目前我有一个用 装饰的 WebService [ScriptService]
,但是当我使用内置的测试表单页面对其进行测试时,它返回 XML ...我假设,这是因为测试页面默认发送 Content-Type XML。
谢谢
编辑(示例):
我有课:
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
现在我有了 ASP.NET WebService:
[ScriptService]
public class PersonService : WebService
{
[WebMethod]
public Person GetDave()
{
Person dave = new Person();
dave.FirstName = "Dave";
dave.LastName = "Test";
return dave;
}
}
当我使用 jQuery AJAX 从网页调用此 WebService 时,我{"FirstName":"Dave","LastName":"Test"}
在 JavaScript 中收到 JSON Person 对象(不是字符串),但是当我从 ASP.NET WebService 测试表单调用此 WebService 时(当我右键单击 ASMX 文件并使用“Preview In浏览器"),
它返回:
<?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>Test</LastName>
</Person>
想要的是当我从测试页面调用服务时,看到相同的输出:
{"FirstName":"Dave","LastName":"Test"}