web api odata:$select 不工作
Posted
技术标签:
【中文标题】web api odata:$select 不工作【英文标题】:web api odata: $select not working 【发布时间】:2013-04-12 04:58:21 【问题描述】:试图让这个工作。即使我只指定一个 (?$select=title),查询也会返回所有行。在 webapiconfig 我有:
var queryAttribute = new QueryableAttribute()
AllowedQueryOptions = AllowedQueryOptions.All
;
config.EnableQuerySupport(queryAttribute);
控制器如下所示:
public override IQueryable<_person_TITLE> Get()
return db.personTitle.AsQueryable();
protected override _person_TITLE GetEntityByKey(int key)
return db.personTitle.FirstOrDefault(p => p.person_TITLE_ID == key);
protected override void Dispose(bool disposing)
db.Dispose();
base.Dispose(disposing);
编辑: 在做了一些挖掘之后,我发现 $select 从来没有正式实现过。这就是默认情况下未在 AllowedQueryOptions 中打开它的原因。
那么,这是什么意思???拥有此选项至关重要。如果没有这个选项,将 odata web api 投入生产将是愚蠢的。在你自己的处理程序中编码会首先破坏使用 web api 的目的。
【问题讨论】:
【参考方案1】:我们现在正在努力。对 $select 和 $expand 的支持应该很快就会出现在每晚构建中。
【讨论】:
$select 和 $expand 现在可以在夜间构建中使用。查看post,了解如何使用我们的夜间构建。 您计划通过 nuget 发布稳定版本的任何日期?以上是关于web api odata:$select 不工作的主要内容,如果未能解决你的问题,请参考以下文章
从表中仅选择几列以使用 C# Web API 上的 Odata Select 查询进行映射
Web API OData V4 在本地工作,但不在 IIS 上