Smetko.Paging
1.0.0
dotnet add package Smetko.Paging --version 1.0.0
NuGet\Install-Package Smetko.Paging -Version 1.0.0
<PackageReference Include="Smetko.Paging" Version="1.0.0" />
paket add Smetko.Paging --version 1.0.0
#r "nuget: Smetko.Paging, 1.0.0"
// Install Smetko.Paging as a Cake Addin
#addin nuget:?package=Smetko.Paging&version=1.0.0
// Install Smetko.Paging as a Cake Tool
#tool nuget:?package=Smetko.Paging&version=1.0.0
Smetko.Paging
C# library for paginating results in (or out of) ASP.NET CORE MVC 6
Without extension methods.
Usage
var query = context.Product.Where(criteria);
// no mapping
var pagedList = PagedList<Product>.FromQueryable(query);
var pagedList = PagedList<Product>.FromQueryable(query, pageNumber: 1);
var pagedList = PagedList<Product>.FromQueryable(query, pageNumber: 1, pageSize: 50);
// with mapping
Func<Product, ProductDto> mapper = x => new ProductDto() {Name = x.Name, Price = x.Price};
var pagedList = PagedList<ProductDto>.FromQueryable(query, mapper);
var pagedList = PagedList<ProductDto>.FromQueryable(query, mapper, pageNumber: 1);
var pagedList = PagedList<ProductDto>.FromQueryable(query, mapper, pageNumber: 1, pageSize: 50);
Smetko.Paging.Mvc
Razor tools for rendering paginated results. Requires Smetko.Paging
Usage
Tell MVC how to find paging templates in your Startup.cs
services.Configure<RazorViewEngineOptions>(options =>
{
options.FileProviders.Add(
new EmbeddedFileProvider(typeof(Smetko.Paging.UrlHelperExtensions).Assembly));
});
Show pager first, prev,1,2,3,4...,next,last)
@model Smetko.Paging.PagedList<Product>
@{ Html.RenderPartial("_PagerPartial", Model.Pager); }
Extra
To use your own pager template create Views/Shared/_PagerPartial.cshtml:
@using Smetko.Paging
@model Smetko.Paging.Pager
@if (Model.EndPage > 1)
{
<ul class="pagination">
@if (Model.CurrentPage > 1)
{
<li>
<a href="@Url.Current(new { pageNumber = 1 })">First</a>
</li>
<li>
<a href="@Url.Current(new { pageNumber = Model.CurrentPage - 1 })">Previous</a>
</li>
}
@for (int page = Model.StartPage; page <= Model.EndPage; page++)
{
<li class="@(page == Model.CurrentPage ? "active" : "")">
<a href="@Url.Current(new { pageNumber = page })">@(page)</a>
</li>
}
@if (Model.CurrentPage < Model.TotalPages)
{
<li>
<a href="@Url.Current(new { pageNumber = Model.CurrentPage + 1 })">Next</a>
</li>
<li>
<a href="@Url.Current(new { pageNumber = Model.TotalPages })">Last</a>
</li>
}
</ul>
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 is compatible. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Smetko.Paging:
Package | Downloads |
---|---|
Smetko.Paging.Mvc
Razor pager for MVC6 paged lists from Smetko.Paging (first,prev,1,2,3,4..next,last). Easy template override. Check nuget page to see examples. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 1,771 | 11/29/2017 |