我正在为我们经常需要查询的一堆 Sharepoint 列表创建一个类库。
问题是,如果查询很简单,则查询在所有页面(大约 15 在服务器端分页 1000 个项目)中运行得很好
query = Tickets.Expand(o => o.Property1).Expand(o => o.Property2)
响应被转换成一个列表,然后可以进一步查询/排序/用户需要什么。但是我需要用预定义的过滤器(按日期、按用户等)编写更多方法
在这里编译器向我抛出错误。
public IEnumerable<TicketsItem> GetTicketsByDate(DateTime? startDate)
{
ResultList = new List<TicketsItem>();
query = oDataService.Tickets.Where(d => d.EMail == "1");
token = null;
// Query ausführen
response = oDataService.Execute<TicketsItem>(query.RequestUri) as QueryOperationResponse<TicketsItem>;
do
{
// wenn Paging aktiv, nächste Seite vorbereiten
if (token != null)
{
response = oDataService.Execute<TicketsItem>(token) as QueryOperationResponse<TicketsItem>;
}
// Query-Ergebnisse hinzufügen
ResultList.AddRange(response);
} while ((token = response.GetContinuation()) != null);
return ResultList;
}
where 子句只是一个毫无意义的模型。重要的部分是以下错误:
“System.Linq.IQueryable”不能被隐式转换为“System.Data.Services.Client.DataServiceQuery”(从德语到英语的免费翻译)
为什么没有 where 子句的查询运行良好,为什么它会失败?