0

Похоже, что PagedList.Core не содержит метод расширения для помощника Html, поэтому я не могу использовать код ниже:PagedList.Core.Mvc PagedListPager Html в .Net Ядра не существует

@Html.PagedListPager(Model, page => Url.Action("Index", new { page }), PagedListRenderOptions.MinimalWithItemCountText) 

Я был способный успешно реализовать пейджинг в предыдущей версии MVC, но он не работает в ASP.Net Core. Ниже я приложил ссылку IL Dasm. Я что-то упускаю, или есть ли другой способ реализовать это?

PagedList.Mvc:

enter image description here

PagedList.Core.Mvc:

enter image description here

+0

Какой пакет вы используете? (Было бы полезно использовать NuGet Link). Просто потому, что что-то имеет '.Core' в имени, это не значит для .NET Core! «Core» в именах пакетов (даже до того, как .NET Core был там), это другое слово для «Common» или «Shared». Знаменатель связки, который действует как базовый пакет для других пакетов. Пакеты для ASP.NET Core обычно имеют идентификатор «AspNetCore» в имени своего пакета. А библиотеки вообще для .NET Core просто имеют те же имена, что и для .NET Framework, но нацелены на «netstandard» (вы можете видеть, что в разделе зависимостей NuGet) – Tseng

+0

Примерами для этого являются http://www.nuget.org /packages/Sakura.AspNetCore.PagedList, он имеет раздел «.NETStandard 1.0» – Tseng

+0

. Имя пакета Nuget - PagedList.Core.Mvc от Troy Goode. Этот посвященный для .Net Core, его предыдущая версия, упомянутая выше, отлично работает в предыдущей версии фрейма. – lucas

ответ

3

я должен следовать инструкции по новой версии, она немного отличается от предыдущей версии , Я был в состоянии осуществить подкачку со следующими изменениями кода:

Startup.cs:

public void ConfigureServices(IServiceCollection services) 
    { 
     services.AddSingleton<IActionContextAccessor, ActionContextAccessor>(); 
    } 

_ViewImports.cshtml:

@addTagHelper *, PagedList.Core.Mvc 

И, наконец, чтобы использовать его, мы не используем Html tag helper больше в .Net Core:

<pager class="pager-container" list="@Model" options="@PagedListRenderOptions.TwitterBootstrapPager" asp-action="Index" asp-controller="ControllerName" /> 
+0

Полезный , но можете ли вы связаться с документами? Пакеты NuGet указывают на старый ProjectUrl, я не могу найти новую страницу. –

+0

Что бы я добавил сюда, чтобы мой запрос на следующую страницу был направлен как запрос на отправку, а не как запрос Get. –