InvalidCastException: невозможно привести объект типа System.Linq.OrderedEnumerable к типу System.Collections.Generic.LiC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 InvalidCastException: невозможно привести объект типа System.Linq.OrderedEnumerable к типу System.Collections.Generic.Li

Сообщение Anonymous »

В моем веб-приложении ASP.NET 4.8 работает следующее: Я использую PagedList для разбиения на страницы:

Код: Выделить всё

private AppDbContext db = new AppDbContext();
private IQueryable Broders;

public ViewResult Index(int? page)
{
Broders = from s in db.Broders select s;

if (SearchColumn == "T1")
{
Borders = Broders.Where(s => s.TagT1.ToString().Contains(searchString));
}
else if (SearchColumn == "T2")
{
Borders = Broders.Where(s => s.TagT2.ToString().Contains(searchString));
}

switch (sortOrder)
{
case "status_desc":
Borders = Borders.OrderByDescending(s => s.Status);
break;

case "status_desc":
Borders = Borders.OrderByDescending(s => s.Status);
break;

default:
Borders = Borders.OrderByDescending(s => s.CreatedOn);
break;
}

int pageSize = 10;
int pageNumber = (page ?? 1);

return View(Borders.ToPagedList(pageNumber, pageSize));
}
Я делаю это в приложении ASP.NET Core 8 MVC, используя X.PagedList для разбиения на страницы:

Код: Выделить всё

private readonly AppDbContext _context;
private IQueryable
Borders;

public async Task Index(int? page)
{
var Borders = await _context.Borders.ToListAsync();

if (SearchColumn == "T1")
{
Borders = (List)Broders.Where(s => s.TagT1.ToString().Contains(searchString));
}
else if (SearchColumn == "T2")
{
Borders = (List)Broders.Where(s => s.TagT2.ToString().Contains(searchString));
}

switch (sortOrder)
{
case "status_desc":
Borders = (List)Borders.OrderByDescending(s => s.Status);
break;

case "status_desc":
Borders = (List)Borders.OrderByDescending(s => s.Status);
break;

default:
Borders = (List)Borders.OrderByDescending(s => s.CreatedOn);
break;
}

int pageSize = 10;
int pageNumber = (page ?? 1);

return View(Borders.ToPagedList(pageNumber, pageSize));
}
Этот код ASP.NET Core выдает ошибку

InvalidCastException: невозможно привести объект типа «System.Linq» .OrderedEnumerable

Код: Выделить всё

2[Map.Models.Border,System.String]' to type 'System.Collections.Generic.List
1[Map.Models.Border]'

в строке

Код: Выделить всё

Borders = (List)Borders.OrderByDescending(s => s.CreatedOn);
Я новичок в ASP.NET Core, это мое первое приложение. Может ли кто-нибудь сказать мне, какую ошибку я допускаю в своем основном методе ASP.NET?

Подробнее здесь: https://stackoverflow.com/questions/786 ... edenumerab
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»