我只想按照这样下降:
var query = from o in oEntite_T.ORDRE
where o.DATE_CREE >= datedeb && o.DATE_CREE <= datefin
orderby o.NO_ORDRE descending
select o;
它没有下降顺序,我也尝试过:
var query = (from o in oEntite_T.ORDRE
where o.DATE_CREE >= datedeb && o.DATE_CREE <= datefin
select o).OrderByDescending(p => p.NO_ORDRE);
我得到了相同的结果。这是因为组件Devexpress?
linqServerModeSource_Ordre.KeyExpression = "NO_ORDRE;CODE_CLIENT";
linqServerModeSource_Ordre.QueryableSource = oOrdre_BL.Get_OrdreEntity(dateEdit_Deb_Ordre.DateTime, dateEdit_Fin_Ordre.DateTime);
gridControl_Liste_Ordres.DataSource = linqServerModeSource_Ordre;
我的完整代码:
public IQueryable<ORDRE> Get_OrdreEntity(DateTime datedeb, DateTime datefin)
{
try
{
IQueryable<ORDRE> LesListe;
Soft8Exp_ClientEntities oEntite_T = new Soft8Exp_ClientEntities();
var query = (from o in oEntite_T.ORDRE
where o.DATE_CREE >= datedeb && o.DATE_CREE <= datefin
select o).OrderByDescending(p => p.NO_ORDRE);
//var query = oEntite_T.ExecuteFunction<ORDRE>("qf").;
LesListe = query;
return LesListe;
}
catch (Exception excThrown)
{
throw new Exception("Err_02", excThrown);
}
}
答案 0 :(得分:1)
从代码中我看到您将查询对象返回到某个外部基础结构(设置devexpress组件的DataSource属性)。 然后我知道这个组件只是添加了另一个.OrderBy来执行它的对象,这样你的排序就会丢失。
由于devexpress有自己的排序功能,似乎只是覆盖你的,这似乎是非常可能和合乎逻辑的。
通过设置DataSource,您只需提供一个数据集,由组件来添加排序,分页等。
请查看组件API以指定所需的排序。也许它具有这样做的属性。