2

我在我的项目中实现了 WCF OData 服务。现在我需要我的服务为我的客户返回 JsonResult。如何实现 Restful WCF OData 服务?或者是否有任何替代方法可以在我的服务中返回 JsonResult?

4

1 回答 1

1

OData 服务本身支持 JSON。因此,如果在 HTTP 请求标头中指定以下标头,您将始终获得 JSON

接受:应用程序/json

如果你无法控制这个,那么我建议你使用 $format 过滤器。

例如参见http://odata.netflix.com/v2/Catalog/Genres ?$Format=json

从 MSDN http://code.msdn.microsoft.com/DataServicesJSONP下载 ADO.NET 数据服务的 JSONp 和 URL 控制格式支持,并将 JSONPSupportBehavior 装饰器添加到您的 DataService 类,如下所示。

[JSONPSupportBehavior]
public class SomeService: DataService<ContextType>
{

另一种选择可能是构建 ASP.NET Web API。它是在 .NET Framework 上构建 RESTful 应用程序的理想平台。

于 2012-07-17T05:37:19.163 回答