У меня есть эта простая функция в классе, который возвращает IENumerable Colection с использованием проекции LINQ:
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 возвращаются в алфавитном порядке, а не в исходном определении объекта? И как вернуть участников в определенном порядке? Спасибо
ОБНОВЛЕНИЕ Извините, если мой вопрос не ясен. я постараюсь объяснить свою проблему. Класс Pedidos (это действительно класс POCOs, сгенерированный из 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 не решает мою проблему. Речь идет о порядке свойств. Когда я использую ToList() для заполнения этого класса, я получаю свойства в алфавитном порядке (Aprobado, Bruto и т. д.) вместо определения порядка класса (ID_Pedido, Numero и т. д.). Язык названий полей здесь не имеет значения. Надеюсь, это ясно мой ответ.
Когда я пытаюсь показать данные о клиенте через сетку данных:
Как вы можете видеть, в обоих случаях свойства отображаются в алфавитном порядке, а не в порядке класса. Почему?
Pedidos
... И что вы подразумеваете под полями IEnumerable? Ваш вопрос пока не ясен. - person Jon Skeet   schedule 29.03.2014