8

我正在使用 Visual Studio 2012 附带的 MVC 4 web api。

据我了解,odata 不会自动解析,但我们现在需要将 [Queryable] 属性添加到操作中。

所以我添加了它:

public class TestController : ApiController
{
    [Queryable]
    public IQueryable<MyClass> GetMyClasses()
    {
       return ...;
    }
}

但我收到编译错误:

The type or namespace name 'Queryable' could not be found (are you missing a using directive or an assembly reference?) 

odata 还支持吗?以及为什么 Queryable 未被识别为此处列出的属性。

谢谢

4

2 回答 2

15

如此处所述,OData 支持已移至单独的NuGet 包

于 2012-09-23T16:51:31.897 回答
12

它在这个程序集(DLL)中:

 System.Web.Http.OData.dll

这个命名空间:

System.Web.Http.QueryableAttribute

在这个 nuget 包中:

Install-Package Microsoft.AspNet.WebApi.OData

当我安装软件包时,它并没有显示为有效类型。即使验证它System.Web.Http.OData.dll存在并在对象资源管理器中查找,我也找不到它。最终我只是重新启动了 Visual Studio,一切都很好。我怀疑这个 DLL 的某些旧版本可能会混淆它或类似的东西。

于 2013-04-28T01:24:22.337 回答