如何从OData中运行查询的对象返回另一个对象?

时间:2013-05-14 14:19:15

标签: asp.net-web-api odata

我正在尝试从控制器的Get方法返回一个对象,该方法与运行查询的类不同。

根据答案here,这就是我正在做的事情:

public PageResult<OutputPoco> Get(ODataQueryOptions<InputPoco> odataQueryOptions)

尝试运行时,我得到406 Not Acceptable。我错过了什么?这种方法是否有一个有效的例子?

更新: 我正在使用ODataControllerOutputPoco包含对InputPoco的引用。我需要排序和过滤才能工作(InputPoco)。

1 个答案:

答案 0 :(得分:1)

您使用的是ODataController吗?只有在构建OData服务时才必须使用ODataController。在这种情况下,您必须构建EDM模型,然后使用odata路径公开OData服务。

如果您只想构建一个仅支持OData查询语义的vanilla Web API(而不是其他OData,如url约定和格式化),则应该使用ApiController。