ASP.NET Webservice - 返回JSON

时间:2012-11-05 18:06:41

标签: c# json web-services

我有一个名为SalesService的Web服务,它将信息作为" SalesInfo"实例。将从Windows应用程序调用此Web服务。

我想知道是否可以以JSON格式从Web服务发送结果?

请记住,这是从Windows应用程序而不是从Web应用程序调用的。我想知道如何将JSON从webservice发送到Windows应用程序..这样就不会发生XML序列化。

由于

2 个答案:

答案 0 :(得分:2)

这取决于您拥有的Web服务的类型。

  • 如果是WCF,您可以使用WebInvoke属性和WebMessageFormat.Json来设置JSON响应。有关示例,请参阅this post

  • 如果您正在使用ASP.NET MVC项目并希望返回JSON,请使用Json object

例如:

public JsonResult Index()
{
    return Json(new { name = "John Doe" });
}
  • 如果您正在使用WebAPI,则需要在请求中设置Content-Type header,而WebAPI将负责其余的工作。

答案 1 :(得分:0)

使用JSON发送响应是可能的,并且相对简单。由客户来解密它。

Windows应用程序需要从webapp反序列化JSON结果。在System.Runtime.Serialization.Json命名空间中的.NET 4中有一个JSON库。如果你需要它用于早期版本,你可能需要查看JSON.Net - http://james.newtonking.com/pages/json-net.aspx