Я пытаюсь заполнить опции выбора тега из вызова JQuery ajax. Я использую Asp.Net Core 2.1 Razor Pages и PostgreSQL в качестве БД.
Вот мой код LINQ на стороне сервера
[HttpGet]
public ActionResult TypeofAccounts()
{
var result = (from N in _POSContext.TypeOfAccounts
select new { label = N.AccountType, id = N.AccountType });
return Json(result);
}
Работает нормально. Теперь я хочу отсортировать эти результаты по LINQ
, поэтому я попробовал следующие способы, но он всегда встречает Npgsql
Исключение "column \"label\" does not exist"
var result = (from N in _POSContext.TypeOfAccounts.OrderBy(x=>x.AccountType)
select new { label = N.AccountType, id = N.AccountType });
var result = (from N in _POSContext.TypeOfAccounts
select new { label = N.AccountType, id = N.AccountType }).OrderBy(x => x.label);
var result = (from N in _POSContext.TypeOfAccounts.OrderBy(x => x.AccountType)
where N.AccountType != null
select new { label = N.AccountType, id = N.AccountType });
Я вижу, что в сгенерированном sql отсутствует столбец.
{SELECT x."AccountType" AS id
FROM "TypeOfAccounts" AS x
WHERE x."AccountType" IS NOT NULL
ORDER BY label}