1
私は流暢なmongoを使用しています。子供を得るためのMongoの問い合わせ
私は
public class SomeList
{
public List<ItemLike> Likes { get; set; }
public List<ItemComment> Comments { get; set; }
public List<ListItem> ListItems { get; set; }
}
としての実体を持っているのListItemだからメインエンティティSomeListがリストを持っており、また、エンティティのListItemのリストを持っている別のエンティティ
public class ListItem
{
pub string ListItemId { get; set; }
public List<ItemComment> CommentsList { get; set; }
public List<Photo> ItemPhotos { get; set; }
}
です。
リストをListItemから取得するためのmongoクエリーが必要です。
私は次のクエリ
var myCollection = GetMongoDatabase().GetCollection<SomeList>("SomeLists");
var list = myCollection.Find(Query.EQ("ListItems.ListItemId", listItemId)).SetFields(Fields.Slice("ListItems.LikesList", 0)).SingleOrDefault();
ListItem listItem = list.ListItems.Where(x => x.ListItemId == listItemId).SingleOrDefault();
items = listItem.CommentsList;
私はQuery.EQ(「ListItems.ListItemId」、listItemId)を行うと、それがメインSomeListエンティティを与えるを使用しています。 次の行にwhere句を再度適用します。私は欲しくない。
それでも主体が得られます。 –
スライスを削除した場合に返されるのは何ですか? 'var list = myCollection.Find(Query.EQ(" ListItems.ListItemId "、listItemId));' あなたは何を取り戻していますか?このクエリは期待通りに機能していますか? – Gregor