我正在尝试填充一个下拉列表与制药公司,如拜耳,麦德利等,我正在从数据库中获得这些名称和这些名称在数据库中重复,但具有不同的id。
我尝试使用Linq Distinct(),但我不想使用相等比较器。还有别的办法吗?
我的下拉列表必须填入公司的id和名称。
我正在尝试类似这样的东西:
var x = _partnerService
.SelectPartners()
.Select(c => new {codPartner = c.codPartner, name = c.name})
.Distinct();这显示了ddl中重复出现的公司。
谢谢!
发布于 2009-05-26 19:29:12
下面的表达式将只选择不同的公司,并返回第一个匹配项及其id。
partnerService.SelectPartners().GroupBy(p => p.Name).Select(g => g.First());发布于 2009-05-26 19:24:29
var distinctCompanies = Companies
.GroupBy(c => c.CompanyName)
.Select(g => g.First());发布于 2009-05-26 19:13:17
Distinct作用于整个select。如果在select中包含c.codPartner,并且同一c.name有两个不同的c.codPartner值,那么您将看到具有相同c.name的两行。
https://stackoverflow.com/questions/912188
复制相似问题