Я, имеющий следующий сбор, который содержит список программ и каждую программу, содержащий список сессий:Как запросить вспомогательный документ в MongoDB
{
"_id" : ObjectId("543f6fd8a4490a19b42c84eb"),
"Name" : "Program1",
"Tags" : "Tag1,Tag2",
"Sessions" : [{
"_id" : ObjectId("544a00716c6d791820c2d1ae"),
"Name" : "Session1",
"Tags" : "Tag1,Tag2"
},{
"_id" : ObjectId("544e426dbb63bc0d94d7ad81"),
"Name" : "Session2",
"Tags" : "Tag1,Tag2"
}]
},
{
"_id" : ObjectId("544e42a1bb63bc0d94d7ad82"),
"Name" : "Program2",
"Tags" : "Tag1,Tag2",
"Sessions" : [{
"_id" : ObjectId("543f6fd8a4490a19b42c84eb"),
"Name" : "Session1",
"Tags" : "Tag1,Tag2"
},{
"_id" : ObjectId("544e4cb1bb63bc0d24333b04"),
"Name" : "Session2",
"Tags" : "Tag1,Tag2"
}]
}
Теперь для выполнения запросов к программе я просто следующий:
var program = _db.GetCollection<Program>("Program");
IMongoQuery _query = Query<Program>.Where(e => e.Name.Contains("Program"));
programCursor = MongoCursor program.Find(_query).SetSortOrder(SortBy.Ascending("Name")).SetLimit(ItemsPerPage).SetSkip(ItemsPerPage * (PageNo - 1));
Теперь, если я хочу запросить сессии, которые являются дополнительным документом. Предполагая, что у меня есть идентификатор программы и имя сеанса, как я буду запрашивать вспомогательный документ в mongodb C#. Я не нашел большой помощи в этом сценарии, поэтому я публикую это.
В отличие от форумов, мы не используем «Спасибо», «Любая помощь оценена» или подписи на [so]. См. «[Должны ли« Привет »,« спасибо », теги и приветствия удалены из сообщений?] (Http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be -Удалена-от-сообщений). –