1
我在尝试时运行对RavenDB特定查询以下错误:对指数RavenDB LINQ查询失败
Can't extract value from expression of type: ArrayIndex
这里是产生错误的查询:
people = from p in RavenSession.Query<DBObjects.Person, People_ByNameAndTrashedSortByFirstNameAndLastName>()
orderby p.FirstName, p.LastName
select p;
...
//building LINQ query
...
people = from p in people
where ((p.FirstName.StartsWith(SearchWords[0])) && (p.LastName.StartsWith(SearchWords[1])))
select p;
...
//later
foreach(DBObject.Person person in people) //triggers error listed above
{
}
我想知道这是否是RavenDB的限制。我注意到如果我切换&&
与||
,那么我没有错误。当然,我也没有得到我想要的结果。我也尝试重写查询为:
people = from p in people
where p.FirstName.StartsWith(SearchWords[0])
where p.LastName.StartsWith(SearchWords[1])
select p;
我得到相同的错误。
我也试过使用动态索引而不是静态索引。我犯了同样的错误。
这是它。原来它用'||'代替'&&'是因为我搜索的是整个输入文本而不是数组中的拆分词。谢谢! – user1304444 2013-04-30 17:10:13
啊!遇到同样的问题。通过RavenDB LINQ驱动程序不支持的内容再次跳出。谢谢! – Darryl 2013-11-30 00:09:58