linq выбрать элементы из дочерней коллекции

Ниже приведены мои занятия. У меня есть продукт, который содержит список дней. Каждый день имеет городскую собственность.

Мне нужно создать запрос linq, который даст мне различные города, которые используются во всех моих продуктах в системе.

Я пробовал что-то вроде этого, но это не работает:

var cities = from product in NHibernateSession.Linq<Product>() select new { city = product.Days.Where(d => d.City != null).Distinct() }; //This returns the day items but i need distinct cities

   public class Product : EntityBase
   {
        public virtual string Name { get; set; }
        public virtual IList<ProductDayDefinition> Days { get; set; }
   }

   public class ProductDayDefinition : EntityBase
   {
        public virtual Product Product { get; set; }
        public virtual City City { get; set; }
   }

Ответы на вопрос(1)

Ваш ответ на вопрос