2

以下两个查询都按预期工作。我无法弄清楚如何使用“Include()”方法一次性从数据库中返回两者。

var result = _documentsSession
    .Advanced
    .LuceneQuery<MessageStatisticResult, MessageSummaryByUserIndex>()
    .Where("Email:" + command.UserName);

var user = _documentSession
    .Load<IUser>("users/" + command.UserName);

一旦我添加了“Include()”方法,Query() 和 Advance() 都不再相关。有没有办法做到这一点?

4

2 回答 2

0

这也会产生结果,但不会在一次访问数据库中获得两者:

var result = _documentsSession
    .Query<MessageStatisticResult, MessageSummaryByUserIndex>()
    .Customize(x => x.Include("users/" + command.UserName))
    .Where(x => x.Email == command.UserName)
    .FirstOrDefault();

var user = _documentSession
    .Load<IUser>("users/" + command.UserName);
于 2011-03-31T16:02:30.153 回答
0

最后的答案是删除我的 RavenDB 代码并从 git 重新克隆并重建。然后它工作得很好。

于 2011-04-14T22:34:50.390 回答