我已经实现了一个可行的解决方案,但是 LINQ 对我来说很重要,我正在努力寻找所需的信息。
这是我所拥有的:
var prodCat = from pc in db.ProductCategories
where pc.Category == Int32.Parse(CategoriesDropper.SelectedValue)
select pc;
List<int> productIds = new List<int>();
foreach (var pc in prodCat)
{
productIds.Add(pc.Product);
}
var products = from p in db.Products
where productIds.Contains(p.Id)
select p;
ProductsGridView.DataSource = products;
ProductsGridView.DataBind();
理想情况下,我希望通过一次选择而不是两次选择来获得相同的结果。