我正在尝试根据我选择的列对查询结果进行排序。但由于某种原因,结果没有排序。结果的显示顺序与输入数据库的顺序相同。当我按行删除订单时,结果不会改变。“where”子句似乎工作正常。
var result = (from f in db.firmware
where f.firmware_branch_text != ""
orderby f.firmware_branch_text!=null,
f.firmware_branch_text
select f.firmware_branch_text
).Distinct();
输出顺序如下:
2.2.2
2.2.3
2.4.1
2.4.0
3.0.0
2.6.12
2.6.13
2.6.14
2.6.15
2.0.2
回答 :
Distinct 破坏了顺序,所以我们需要在 distinct 之后进行排序:
var result = (from f in db.firmware
where f.firmware_branch_text != ""
select f.firmware_branch_text
).Distinct().OrderBy(a=>a);