.net Core 5.0 ile Mernis (Merkezi Nüfus İdaresi Sistemi) Sistemi Üzerinden T.C. Kimlik No Sorgulama
.net Core 5.0 ile Mernis (Merkezi Nüfus İdaresi Sistemi) Sistemi Üzerinden T.C. Kimlik No Sorgulama
Bu yazımda Mernis web servisleri arasında bulunan TC Kimlik Doğrulamasının
.NET Core alt yapısında kullanılmasını inceleyeceğiz.
.net Core 5.0 alt yapısını kullanarak proje oluşturuyoruz.
Ardından gerekli bilgileri kullanıcıdan almak için bir form
tasarlayacağız.
Bu form üzerinden gönderilen verileri
servisteki TCKimlikDogrula metoduna göndererek kullanıcıya
ait TC kimlik numarasının doğrulana bilirliği test edilecektir.
Öncelikle projemizi oluşturalım.
Proje oluşturma işlemi sonrasında ilgili servisi projemize bağlayacağız.
TC Kimlik web servis linki: https://tckimlik.nvi.gov.tr/Service/KPSPublic.asmx?WSDL
Mernis'e ait diğer servislerin linki: https://tckimlik.nvi.gov.tr/Home
Proje oluşturulduktan sonra, solution sekmesine sağ tıklayıp Add menüsüne tıklayıp oradanda Connected Service diyoruz.
Açılan pencerede: Service Referances modülü altında yer alan
Add a service referance linkine tıklıyoruz.
Sonrasında WCF Web Service kısmını seçip Next diyoruz.
TC Kimlik doğrulama servisinin linkini URI alanına girip Go butonuna tıkladıktan sonra aşağıdaki gibi servis ve metotları
görünecektir. Bizim kullanacağımız metot, TCKimlikNoDogrula olacaktır. Namespace alanına istediğimiz ismi tanımlayabiliriz.
Tanımlama sonrası aşağıdaki gibi görünmesi beklenir.
Sonrasında Models klasörüne girip bir class tanımlıyoruz.
Daha sonra HomeController kısmını düzenliyoruz.
View kısmını tasarlıyoruz.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@{ | |
ViewData["Title"] = "Mersis Sisteminden TC Sorgulama"; | |
} | |
@model TCKimlikDogrulama.Models.TCModel | |
@{ | |
if (TempData["durum"] != null) | |
{ | |
if (TempData["durum"].ToString() != "True") | |
{ | |
<script> | |
$.notify("T.C. Kimlik No geçersiz. Girilen bilgileri kontrol ediniz!"); | |
</script> | |
} | |
else | |
{ | |
<script> | |
$.notify("T.C. Kimlik Numarası Geçerli", "success"); | |
</script> | |
} | |
} | |
} | |
<div class="text-center"> | |
<h1 class="display-4">Hoş Geldiniz</h1> | |
<p>Aşağıdaki bilgileri eksiksiz bir şekilde giriniz</p> | |
</div> | |
<div class="col-md-6 d-flex mx-auto"> | |
<form asp-action="index" method="post"> | |
<div class="form-group row"> | |
<label for="TCKimlikNo" class="col-4 col-form-label">T.C. Kimlik No</label> | |
<div class="col-8"> | |
<div class="input-group"> | |
<div class="input-group-prepend"> | |
<div class="input-group-text"> | |
<i class="fa fa-sort-numeric-asc"></i> | |
</div> | |
</div> | |
<input id="TCKimlikNo" asp-for="TCKimlikNo" type="text" required="required" class="form-control"> | |
</div> | |
</div> | |
</div> | |
<div class="form-group row"> | |
<label for="Ad" class="col-4 col-form-label">Adınız</label> | |
<div class="col-8"> | |
<div class="input-group"> | |
<div class="input-group-prepend"> | |
<div class="input-group-text"> | |
<i class="fa fa-address-card"></i> | |
</div> | |
</div> | |
<input id="Ad" asp-for="Ad" type="text" class="form-control" required="required"> | |
</div> | |
</div> | |
</div> | |
<div class="form-group row"> | |
<label for="Soyad" class="col-4 col-form-label">Soyadınız</label> | |
<div class="col-8"> | |
<div class="input-group"> | |
<div class="input-group-prepend"> | |
<div class="input-group-text"> | |
<i class="fa fa-address-card-o"></i> | |
</div> | |
</div> | |
<input id="Soyad" asp-for="Soyad" type="text" class="form-control"> | |
</div> | |
</div> | |
</div> | |
<div class="form-group row"> | |
<label for="DogumYili" class="col-4 col-form-label">Doğum Yılınız</label> | |
<div class="col-8"> | |
<div class="input-group"> | |
<div class="input-group-prepend"> | |
<div class="input-group-text"> | |
<i class="fa fa-odnoklassniki"></i> | |
</div> | |
</div> | |
<input id="DogumYili" asp-for="DogumYili" type="date" class="form-control" required="required" aria-describedby="DogumYiliHelpBlock"> | |
</div> | |
<span id="DogumYiliHelpBlock" class="form-text text-muted">Önrk: 1990</span> | |
</div> | |
</div> | |
<div class="form-group row"> | |
<div class="offset-4 col-8"> | |
<button name="submit" type="submit" class="btn btn-primary btn-block">Kontrol Et</button> | |
</div> | |
</div> | |
</form> | |
</div> |
İşlemler bittikten sonra test ediyoruz.
Projenin tüm kodlarına https://github.com/MrtAltunok/TCKimlikDogrulama-Mernis üzerinden ulaşabilirsiniz.
Yorumlar
Yorum Gönder
Yorumunuz alınmıştır. İncelenip yayımlanacaktır.