Ravendb Raven DB查询单独文档中的集合
我有一个类似于以下的场景: 假设我有三节课Ravendb Raven DB查询单独文档中的集合,ravendb,Ravendb,我有一个类似于以下的场景: 假设我有三节课 public class User { public string Id {get;set;} } public class FollowableUser { public string Id{get;set;} public IEnumerable<string> FollowingUserIds {get;set;} } public class Event { public string Id{ge
public class User
{
public string Id {get;set;}
}
public class FollowableUser
{
public string Id{get;set;}
public IEnumerable<string> FollowingUserIds {get;set;}
}
public class Event
{
public string Id{get;set;}
public IEnumerable<string> TaggedFollowableUsers {get;set;
}
公共类用户
{
公共字符串Id{get;set;}
}
公共类FollowableUser
{
公共字符串Id{get;set;}
公共IEnumerable用户标识{get;set;}
}
公开课活动
{
公共字符串Id{get;set;}
公共IEnumerable标记FollowableUsers{get;set;
}
我想做的是能够通过用户Id进行查询,并返回所有事件(或至少是事件Id)
编辑
我尝试过这个,但不确定在“减少”部分中要去哪里:
AddMap<Event>(events => from evt in events
from fUser in evt.TaggedFollowableUsers
select new
{
FUserId = fUser,
EventId = evt.Id,
UserId = (string)null
});
AddMap<FollowableUser>(fUsers => from fUser in fUsers
from followingUser in child.FollowedingUserIds
select new
{
FUserId = fUser.Id,
EventId = (string) null,
UserId = followingUser
});
Reduce = results => from result in results
group result by result.FUserId
into g
select new
{
FUserId= g.Key,
EventId = g.Select(x => x.EventId) // not sure what to do from here
};
AddMap(事件=>来自事件中的evt
来自evt.taggedFollowTableUsers中的fUser
选择新的
{
FUserId=fUser,
EventId=evt.Id,
UserId=(字符串)null
});
AddMap(fUser=>来自fUser中的fUser
来自child.followingUserId中的followingUser
选择新的
{
FUserId=fUser.Id,
EventId=(字符串)null,
UserId=followuser
});
Reduce=results=>from result in results
按result.FUserId对结果进行分组
进入g
选择新的
{
FUserId=g.键,
EventId=g.Select(x=>x.EventId)//不确定从这里做什么
};
这是否可以通过单个可查询索引实现,还是需要进行多次调用
谢谢
马特