我在一类这个简单的函数,返回使用LINQ投影IEnumerable的保藏:为什么IEnumerable.ToList()按字母顺序返回字段?
public IEnumerable<Pedidos> Pedidos_Listar(string sComprobante, Clientes MyCliente = null, DateTime? dDesde = null, DateTime? dHasta = null, bool bCumplidos = false)
{
using (var context = new OhmioEntities())
{
return
(from Pedidos in context.Pedidos
join Clientes in context.Clientes on Pedidos.ID_Cliente equals Clientes.ID_Cliente
where Pedidos.ID_Comprobante == sComprobante
select Pedidos).ToList();
}
}
谁能告诉我,为什么IEnumerable的领域按字母顺序排列,而不是原来的对象定义返回?我如何按特定顺序返回成员?谢谢
UPDATE 对不起,如果我的问题不清楚。我会尽力解释我的问题。类Pedidos(这是真的从EF生成波苏斯类)有一些性质是这样的:
public class Pedidos
{
public virtual int ID_Pedido { get; set; }
public virtual int Numero { get; set; }
public virtual DateTime Fecha { get; set; }
public virtual DateTime FechaEntrega { get; set; }
public virtual string Cliente { get; set; }
public virtual Decimal Bruto { get; set; }
public virtual Decimal Neto { get; set; }
public virtual Boolean Aprobado { get; set; }
public virtual string Observaciones { get; set; }
public virtual Boolean Entregado { get; set; }
}
我的订单问题不是关于类里面的数据,所以ORDER sugestion不能解决我的问题。这是关于属性的顺序。当我使用ToList()来填充这个类时,我按照字母顺序(Aprobado,Bruto等)来获取属性,而不是类顺序(ID_Pedido,Numero等)的定义。这些字段的名称的语言无关紧要。希望这清楚我的答案。
当我尝试了一个DataGrid,以显示对cliente数据:
正如你可以在这两种情况下看到性能属性出现顺序alphabelicaly而不是类的顺序。为什么?
1.运气2.使用顺序由什么 –
字母顺序?我们不知道“Pedidos”究竟是什么......你说的“IEnumerable的字段”是什么意思?你的问题目前还不清楚。 –
@ericpap为了得到更好的答案,将代码翻译成英文将是有意义的... –