Qrtix.Paging 1.0.3

dotnet add package Qrtix.Paging --version 1.0.3                
NuGet\Install-Package Qrtix.Paging -Version 1.0.3                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Qrtix.Paging" Version="1.0.3" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Qrtix.Paging --version 1.0.3                
#r "nuget: Qrtix.Paging, 1.0.3"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Qrtix.Paging as a Cake Addin
#addin nuget:?package=Qrtix.Paging&version=1.0.3

// Install Qrtix.Paging as a Cake Tool
#tool nuget:?package=Qrtix.Paging&version=1.0.3                

Paging Library

NuGet Version NuGet Downloads GitHub Repo stars

This C# library provides functionality for implementing paged lists.

Consult the online documentation for more details.

Getting Started

Using the NuGet package manager console within Visual Studio run the following command:

Install-Package Qrtix.Paging

Or using the .NET Core CLI from a terminal window:

dotnet add package Qrtix.Paging

Using PagedList

The PagedList class in the Qrtix.Paging library provides a convenient way to paginate large collections of data efficiently. Here's how you can use it:

Instantiate a PagedList:

// Assuming you have a list of items named 'sourceList' and a page size of 10
var pagedList = new PagedList<T>(sourceList, pageNumber, pageSize);

Access Paginated Data:

You can access the data in the paged list using indexers or enumeration:

// Accessing items using indexer
var item = pagedList[index];

// Enumerating through the paged list
foreach (var item in pagedList)
{
    // Process each item
}

// Using for loop
for (int i = 0; i < pagedList.Count; i++)
{
    var item = pagedList[i];
    // Process each item
}

Retrieve Pagination Information:

You can also retrieve pagination-related information such as the total number of pages, total items, etc.:

// Total number of items
var totalItems = pagedList.TotalItemCount;

// Total number of pages
var totalPages = pagedList.PageCount;

// Current page number
var currentPage = pagedList.PageNumber;

// Page size
var pageSize = pagedList.PageSize;

Contributing

Did you find a bug?

  • Ensure the bug was not already reported by searching on GitHub under Issues.
  • If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.

Did you write a patch that fixes a bug?

  • Open a new GitHub pull request with the patch.
  • Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable.

Do you intend to add a new feature or change an existing one?

  • First suggest your change in the Paging ideas page for discussion.
  • There are no fixed rules on what should and shouldn't be in this library, but some features are more valuable than others, and some require long-term maintenance that outweighs the value of the feature. So please get sign-off from the project leader (Carlos J. Ortiz) before putting in an excessive amount of work.

Do you have questions about the source code?

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  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 is compatible.  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 is compatible.  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 netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.3 is compatible.  netstandard1.4 was computed.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.3 149 9/14/2024
1.0.2 125 4/22/2024
1.0.1 140 3/31/2024
1.0.0 250 2/10/2024

Add abstractions