【发布时间】:2017-02-15 01:29:29
【问题描述】:
我有一个公开 OData 端点的 ASP.NET Web API 2。
在前端,我使用的是 ASP.NET MVC 5。为了使用端点,我使用的是 WCF 服务引用。
我面临的问题是我需要从给定 ID 列表的端点检索行的子集。
这是我在 OData 端点中使用的实体
class MyEntity
{
public int ID {get; set;}
public string Name {get; set;}
public int Age {get; set;}
}
使用 LINQ 我已经在其他情况下使用以下语句解决了这个问题
var result = entitiesContext.MyEntity
.Where(x => idsEmployees.Select(y => y).Contains(x.ID));
其中 idsEmployees 是我需要检索的员工 ID 列表。
在当前场景中使用此语句,我得到以下异常:
将 Linq 表达式转换为 URI 时出错:方法“包含”不是 支持。
我该如何解决这个问题?
谢谢。
【问题讨论】:
-
$filter可能是您正在寻找的东西,但不是肯定的(问题有点令人困惑)docs.microsoft.com/en-us/aspnet/web-api/overview/… -
是 OData v4,对吗?从客户端过滤?
-
@octavioccl 是的
标签: c# asp.net-mvc linq asp.net-web-api odata