Bibliotek for å sjekke gyldighet av norske Fnr, Dnr, HNr,FHN,Duf samt i test environment Tenor og SyntPop nummere.
using Fhi.NinCheck;
string nin = "some 11 digit nin number (12 for Duf)";
if (nin.ErGyldigNin())
{
// Do something
}
Dersom man kjører i test-miljø sender man med en parameter i kallet. Default er true, altså produksjonsmiljø.
using Fhi.NinCheck;
string nin = "some 11 digit nin number (12 for Duf)";
bool isTestEnvironment = !Environment.IsProduction;
if (nin.ErGyldigNin(isTestEnvironment))
{
// Do something
}
Metoden ErGyldigNin
sjekker Fnr, Dnr, Duf, HNr og FHN, og under test i tillegg Tenor og SyntPop.
Det finnes også enklere kall for å sjekke om et spesifikt type nummer er gyldig.
using Fhi.NinCheck;
nin.ErGyldigFNummer();
nin.ErGyldigDNummer();
nin.ErGyldigHNummer();
nin.ErGyldigFHNummer();
nin.ErGyldigDufNummer();
nin.ErGyldigTenorTestNummer();
nin.ErGyldigSyntetiskTestNummer();
Man kan også sette sammen sine egne kombinerte sjekker om man ønsker å begrense mer enn ErGyldigNin gjør. Koden for ErGyldigNin kan anvendes som mal for dette.
using Fhi.NinCheck;
public static bool ErGyldigNin(this string nin,bool isProduction=true)
{
if (nin.ErGyldigFNummer()
|| nin.ErGyldigDNummer()
|| nin.ErGyldigDufNummer()
|| nin.ErGyldigHNummer()
|| nin.ErGyldigFHNummer()
)
return true;
if (isProduction) return false;
return nin.ErGyldigSyntetiskTestNummer()
|| nin.ErGyldigTenorTestNummer();
}
Man kan trekke ut fødselsdato fra et gyldig Fnr, Dnr eller Hnr.
Ved bruk av extension metodene:
if (nin.HasBirthDate())
{
DateTime birthDate = nin.BirthDate();
}
Ved bruk av klassen:
var checker = new NinChecker(nin);
if (checker.HasBirthDate)
{
DateTime birthDate = checker.BirthDate;
}
BirthDate propertien returnerer en nullable DateTime så man kan også skrive:
var checker = new NinChecker(nin);
DateTime? birthDate = checker.BirthDate;
if (birthDate.HasValue)
{
// Do something
}
Om et nummer feiler, kan man hente ut informasjon om hvorfor det feilet.
using Fhi.NinCheck;
string feilinformasjon = Validation.LastFailedStep();
Denne gir feilmelding fra siste steget, så inneholder ikke nødvendigvis all feilinformasjon.