我需要选择具有特定标记的所有地方,然后迭代它们:
public class Place {
public int Id { get; set; }
public string PlaceName { get; set; }
public IEnumerable<Tag> Tags { get; set; }
}
public class Tag {
public int Id { get; set; }
public string TagName { get; set; }
}
每个地方都可以有多个标签。每个标签都可以属于多个位置。
在Linq中 - 我需要选择所有具有特定标记的地方 - 例如此标记:
var Bar = new Tag {
Id = 1,
TagName = "Bar"
}
我试过这个:
foreach (var Bar in Model.Places.Where(x => x.Tags.Contains(Bar)))
但foreach永远不会被迭代 - Contains什么都不返回(许多地方的标签集合中都有一个Bar对象)
我发现了 - 似乎说我的方法应该有用吗?
Linq to Select Parent Objects Where Child Objects Have a Matching Child Object
这应该有用吗?我错过了什么吗?有没有更好的方法呢?
感谢。