J'ai un bit de code existant pour trier une liste d'objets.Conversion d'un tri de collections génériques pour utiliser Linq
productsList.Sort(
delegate(Product p1, Product p2)
{
int result = p1.StartDatetime.CompareTo(p2.StartDatetime);
if (result == 0)
{
if (p1.SomeId == p2.SomeId)
{
result = 0;
}
else if (p1.SomeId == null)
{
result = -1;
}
else if (p2.SomeId == null)
{
result = 1;
}
}
return result;
});
J'ai le sentiment que cela peut être simplifié en le remplaçant par:
productsList = productsList
.OrderBy(p => p.StartDatetime)
.ThenBy(p => p.SomeId)
.ToList();
Ai-je raison dans mon hypothèse?