PESEL 1.0.4
See the version list below for details.
dotnet add package PESEL --version 1.0.4
NuGet\Install-Package PESEL -Version 1.0.4
<PackageReference Include="PESEL" Version="1.0.4" />
paket add PESEL --version 1.0.4
#r "nuget: PESEL, 1.0.4"
// Install PESEL as a Cake Addin #addin nuget:?package=PESEL&version=1.0.4 // Install PESEL as a Cake Tool #tool nuget:?package=PESEL&version=1.0.4
Powszechny Elektroniczny System Ewidencji Ludności (PESEL)
Projekt umożliwia walidację oraz generowanie numerów PESEL.
Instalacja biblioteki
Biblioteka znajduje się w repozytorium "NuGet Gallery". Paczkę można zainstalować wykonując poniższe polecenie:
Install-Package PESEL
Walidacja pesel
PESEL można zwalidować przy użyciu klasy PeselValidator lub atrybutu PeselAttribute w którym można dekorować właściwości modelu.
Wykorzystanie klasy PeselValidator
var validator = new PeselValidator();
var entity = new Entity("02070803628");
var validationResult = validator.Validate(entity);
Assert.IsTrue(validationResult.IsValid);
Obiekt ValidationResult przechowuje również informację o strukturze PESEL. Można z niej pobrać płeć oraz datę urodzenia.
Wykorzystanie atrybutu PESEL
Dodajemy atrybut do właściwości w modelu i koniec. ModelState będzie poprawny tylko wtedy jeśli PESEL zostanie poprawnie zwalidowany.
using PESEL.Attributes;
public class Model
{
[Pesel]
public string Pesel { get; set; }
}
Adekwatny test do wykonania ModelState.IsValid:
var model = new Model
{
Pesel = "02070803628"
};
var context = new ValidationContext(model, null, null);
var validationResults = new List<ValidationResult>();
Assert.IsTrue(Validator.TryValidateObject(model, context, validationResults, true));
Generowanie numerów PESEL
Biblioteka umożliwia wygenerowanie kombinacji wszystkich numerów PESEL dla podanej daty urodzenia. Do generowania numerów PESEL służy metoda Generate z klasy Generator.
var generator = new Generator();
var peselList = generator.Generate(DateTime.Now.AddYears(-1));
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 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | 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 | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.ComponentModel.Annotations (>= 5.0.0)
-
.NETStandard 2.1
- System.ComponentModel.Annotations (>= 5.0.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on PESEL:
Package | Downloads |
---|---|
PESEL.FluentValidation
Rozszerzenie do FluentValidation dla biblioteki PESEL |
|
PESEL.Generator
Biblioteka umożliwiająca generowanie numerów PESEL |
|
PESEL.System.ComponentModel.DataAnnotations
Atrybut do walidacji numeru PESEL z wykorzystaniem System.ComponentModel.Annotations |
GitHub repositories
This package is not used by any popular GitHub repositories.