我有一个对象有另一个对象作为属性,而第二个对象有一个列表作为另一个属性。这样的事情:
MyObjetA
{
MyObjectB PropertyOnA;
DateTime MyDate;
}
MyObjectB
{
List<MyObjectC> PorperyonB;
}
我有一个MyObjectA列表,我希望按日期排序,从中我想按顺序在MyObjectC属性中设置值,首先是按日期排序的第一个MyObjectA的元素。所以我在想这样的事情:
List<MyObjectA> myListObjectA = new List<MyObjectA>();
List<MyObjectC> myLstObjectC = miListObjectA.OrderBy(x=> x.MyDate).SelectMany(x=> x.PropertOnA).SelectMany(y=> y.ProperyOnB).ToList();
但我不确定SelectMany是否确保元素是否有序。
文档说:“将序列的每个元素投影到IEnumerable,并将生成的序列展平为一个序列。”但它没有说明订单。我猜它会在myListObjectA中从第一个元素投射到最后一个元素,但我真的不确定这个。