How to order an IEnumerable <T> of anonymous type?

See the code below, I don’t know why my order doesn’t work, any ideas?

var orderSample = new { ProductName = "", Qty = 0, UserFullName = "" };
var ordersList = (new[] { orderSample }).ToList();

//loop thru another collection and fill ordersList by adding an order at a time
ordersList.Add(new { ProductName = "Product1", Qty = 5, UserFullName = "Mr. Smith" });

//sort the orders by name - DOESN'T WORK
ordersList.OrderBy(p => p.ProductName);

gvReport3.DataSource = ordersList;
gvReport3.DataBind();
+5
source share
1 answer
var sortedList = ordersList.OrderBy(p => p.ProductName).ToList();

OrderBy () returns a sorted collection; it does not change the orderList.

If you need to change the order list, use Sort instead.

+10
source

All Articles