我现在有一个充满餐馆的mongodb。每家餐馆都有一个带有评论对象的数组。我正在尝试在C#中检索每个审阅对象的列表,但我无法使其工作。
因此,为了澄清,我可以找到一家餐馆,但我似乎无法获得C#中的评论对象列表。
我尝试了这个,但它只是将餐馆对象归还给我:
var coll = Database.GetCollection<Restaurant>("restaurants")
.Aggregate()
.Unwind(x => x.reviews);
var result = await coll.ToListAsync();
foreach(var r in result)
{
Console.WriteLine(r.ToString());
}
这是我的餐厅课程:
public class Restaurant
{
[BsonId]
private ObjectId _id { get; set; }
[BsonElement("name")]
public string name { get; set; }
[BsonElement("reviews")]
public List<Review> reviews { get; set; }
public Restaurant(string name)
{
_id = ObjectId.GenerateNewId();
this.name = name;
reviews = new List<Review>();
}
public void addReview(Review r)
{
reviews.Add(r);
}
public void removeReview(Review r)
{
reviews.Remove(r);
}
}
非常感谢任何帮助!
答案 0 :(得分:1)
您需要一个类函数来返回餐厅名称和评论对象。
public String getName(Restaurant rest)
{
return rest.name;
}
public List<Review> getReviews(Restaurant rest)
{
return rest.reviews;
}
编辑:抱歉误解了这个问题。希望这是你现在正在寻找的。 p>