RavenDB:无法从类型:参数的表达式中提取值

时间:2016-06-14 16:27:36

标签: c# ravendb

在RavenDB上运行此查询

var syncContacts = session.Query<SyncContact>()
    .Customize(c => c.WaitForNonStaleResultsAsOfLastWrite())
    .Where(s => !Processing.Contains(s))
    .OrderBy(s => s.DateTimeStamp)
    .Take(64)
    .ToList();

抛出此异常:“无法从类型的表达式中提取值:参数”

处理是一个定义为

的属性
public List<SyncContact> Processing { get; set; }

此代码试图将处理列表中的所有SyncContact项排除在查询中。

1 个答案:

答案 0 :(得分:0)

假设每个SyncContact都有一个Id,您可以用这种方式编写where子句:

.Where(s => !s.Id.In(Processing.Select(p => p.Id)))

希望这有帮助!