使用Linq选择Place对象,使用Tag.Name =“Restaurant”(多对多)

时间:2013-06-04 01:02:26

标签: asp.net asp.net-mvc-3 linq asp.net-mvc-4

asp.net MVC 4应用程序 - linq到具有多对多关系的对象

放置对象

public virtual int PlaceID { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
public virtual string Name { get; set; }

标记对象

  public virtual int TagID { get; set; }
  public virtual string Name { get; set; }
  public virtual string NamePlural { get; set; }
  public virtual ICollection<Place> Places { get; set; }

我是Linq的新手 - 需要一个声明来选择所有带有相关标签的地方&#34; restaurant&#34;。感谢。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

//List<Place> allPlaces = initialized to the initial list
List<Place> list = allPlaces.Where(p => p.Tags.Any(t => t.Name == "restaurant")).ToList();