【发布时间】:2020-04-01 08:42:47
【问题描述】:
我正在使用 Linq to Sql。
这是我数据库中的数据
Cat 20 is Stationery
Cat 30 is Computer Items
Cat 40 is Toiletry
**Id CatId ProductName**
1 20 Pencil
1 20 Pen
1 30 Compact Disc
1 30 USB
1 30 Hard drive
1 40 Toothpaste
1 40 Toothbrush
我检索我的所有产品如下
List<Product> c = myContext.GetProducts(activeStatus).ToList();
当我将数据绑定到我的数据源(我的 ASPX Web 表单页面上的 Gridview、Repeater 等)时,此方法有效。
我现在想按类别获取所有不同的产品,所以我创建了以下代码
List<Product> cats = c.Select(cat => cat.CatId).Distinct().ToList();
但这会产生错误
“无法将“System.Int32”类型的对象转换为“Product”类型
我哪里错了?
【问题讨论】:
-
您的 select 语句返回类别 ID 的集合,而不是产品的集合。您能解释一下为什么您希望该语句返回产品列表吗?
-
我以为我得到了具有不同 id 的产品......我认为 MoreLinq 是要走的路......
标签: c# asp.net linq-to-sql