-3

我正在为我们经常需要查询的一堆 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 子句的查询运行良好,为什么它会失败?

4

1 回答 1

0

愚蠢的我。

query = oDataService.Tickets.Where(d => d.Created == dateStarted) as DataServiceQuery<TicketsItem>

成功了

于 2013-08-09T10:35:25.080 回答