bar*_*ron 94 sql linq select unique visual-studio
我有一个这样的列表:
Red
Red
Brown
Yellow
Green
Green
Brown
Red
Orange
Run Code Online (Sandbox Code Playgroud)
我试图用LINQ做一个SELECT UNIQUE,即我想要
Red
Brown
Yellow
Green
Orange
var uniqueColors = from dbo in database.MainTable
where dbo.Property == true
select dbo.Color.Name;
Run Code Online (Sandbox Code Playgroud)
然后我把它改成了
var uniqueColors = from dbo in database.MainTable
where dbo.Property == true
select dbo.Color.Name.Distinct();
Run Code Online (Sandbox Code Playgroud)
没有成功.第一个select
获取所有颜色,那么如何修改它才能获得唯一值?
如果有更好的方法来构建此查询,那么就更乐意走这条路.
我如何编辑它以便我可以使用.OrderBy("列名"),即按字母顺序按颜色名称,所以名称属性?
我不断收到一条消息:
无法从用法推断出类型参数.尝试明确地指定类型参数.
Jam*_*ran 157
Distinct()会破坏排序,因此您必须在此之后进行排序.
var uniqueColors =
(from dbo in database.MainTable
where dbo.Property == true
select dbo.Color.Name).Distinct().OrderBy(name=>name);
Run Code Online (Sandbox Code Playgroud)
jwe*_*ndl 19
var uniqueColors = (from dbo in database.MainTable
where dbo.Property == true
select dbo.Color.Name).Distinct();
Run Code Online (Sandbox Code Playgroud)
cor*_*erm 10
使用查询理解语法,您可以按如下方式实现orderby:
var uniqueColors = (from dbo in database.MainTable
where dbo.Property
orderby dbo.Color.Name ascending
select dbo.Color.Name).Distinct();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
145027 次 |
最近记录: |