Linq查询“order by”无效,我已按照您网站和其他网站上的所有建议进行操作.任何援助将不胜感激.
- [WebGet]
- public IQueryable<vw_providercharge_providers> GetChargeProviders(int submitted)
- {
- var results = (from p in this.CurrentDataSource.vw_providercharge_providers
- where p.submitted == submitted
- orderby p.fullname
- select p);
- return results;
- }
感谢您的输入!
是的,这是WCF数据服务的WebGet方法.如果我没有返回IQueryable类型,我会收到400错误,所以我稍微修改了你的建议.不幸的是,它似乎仍然无视任何订单.
- [WebGet]
- public IQueryable<vw_providercharge_providers> GetChargeProviders(int submitted)
- {
- var results = (from p in this.CurrentDataSource.vw_providercharge_providers
- where p.submitted == submitted
- orderby p.fullname
- select p).ToArray();
- results.OrderBy(p => p.patientname);
- return results;
- }
解决方法
我注意到你返回了一个IQueryable< T> – 在枚举之前,您是否在结果上调用任何LINQ方法?
Not all LINQ methods preserve order.最常见的是,在您进行排序后调用Distinct()会破坏订单.