Как это сделать с помощью Select ()?
Если перевести на SQL, это будет выглядеть так:
select * from sometable where (somecondition) order by somefieldname desc, newid()
var rand = new Random(); var result = dt.AsEnumerable().OrderBy(r => rand.Next());
Рандомизация строк в DataTable:
http://www.pluralsight -training.net / сообщества / блоги / Fritz / Архив / 2008/04/16 / 50729.aspx
Также из комментариев:
"Рассматривали ли вы просто присвоение GUID для столбца rndSortId и сортировку по этому столбцу?
Поскольку GUID являются случайными, вы должны получить быструю, простую и случайную сортировку. "