У меня есть это:
var q = (from order in db.Orders
from payment in db.Payments
.Where(x => x.ID == order.paymentID)
.DefaultIfEmpty()
from siteUser in db.SiteUsers
.Where(x => x.siteUserID == order.siteUserID)
.DefaultIfEmpty()
where siteUser.siteUserID != null
select new
{
order.orderID,
order.dateCreated,
payment.totalAmount,
siteUser.firstName,
siteUser.lastName
});
Я хочу добавить к этому вот так:
switch (_qs["sort"])
{
case "0":
q = q.OrderByDescending(x => x.dateCreated);
break;
case "1":
q = q.OrderBy(x => x.dateCreated);
break; ...
Я делал это раньше с одной таблицей, но несколько таблиц в первом блоке кода вынуждают меня указать оператор выбора, который делает его анонимным типом. Как это может быть сделано?
Примечание: я даже пытался создать класс со свойствами, которые я выбираю и приводил запрос к этому типу, но все еще не ходил.