0
私のデータテーブルからのパラメータに基づいてクエリを作成しようとしています。私はエラーを取得し続け、基本的に1つのパラメータが異なるそれぞれのcase文でlinqクエリを再作成することを除いて、次のようなことを実行しようとしています。 OrderByまたはOrderByDecending。linqクエリをパラメータに基づいて構築する
パラメータに基づいてクエリを作成する方法はありますか?
public JsonResult IndexData(DTParameterViewModel param)
{
IEnumerable<DataTableRowViewModel> rows = (from j in jobs select j)
.Skip(param.Start)
.Take(param.Length)
.AsEnumerable()
.Select(j => new DataTableRowViewModel
{
Id = j.Id,
ArrivalDate = j.ArrivalDate.ToString(Constants.DATE_FORMAT),
DueDate = j.DueDate?.ToString(Constants.DATE_TIME_FORMAT),
Contact = j.Contact,
Priority = j.Priority.GetDisplayName(),
JobType = j.JobType.GetDisplayName(),
SapDate = j.SapDate.ToString()
});
foreach(DTOrder order in param.Order)
{
ascDesc = order.Dir;
switch (order.Column)
{
case 0:
orderCol = 0;
colName = "Id";
if (ascDesc == "desc")
{
rows = (from j in jobs select j)
.OrderByDescending(j => j.Id);
}
else
{
rows = (from j in jobs select j)
.OrderBy(j => j.Id)
}
break;
case 1:
orderCol = 1;
colName = "ArrivalDate";
if (ascDesc == "desc")
{
rows = (from j in jobs select j)
.OrderByDescending(j => j.ArrivalDate)
}
else
{
rows = (from j in jobs select j)
.OrderBy(j => j.ArrivalDate)
}
break;
}
これはそんなに私を助け、みんなありがとう! – codingNightmares