Aspnet MVC de sunucu tabanlı durumlarda kullandığımız oturum yönetim yani session state kullanımı gösterip ardından oturum açma örneğini yapacağım.
Öncelikle.. Session nedir ? sorusuyla yazımıza başlayalım.

Session Nedir?
Kullanıcının sayfayı görüntülediği anda başlayıp tarayıcının kapanana ya da session süresinin bitmesine kadar geçen süreye session ( oturum ) denir. Sunucu taraflıdır. Veri saklama işlemleri için kullanılır. 
Basit bir örnek verirsek oturum açma (login) işlemi 

Aspnet MVC Session Kullanımına göz atalım..

Session Oluşturma
Session oluşturma işleminde 2 yöntemimiz bulunmakta
Add metodu ile
//Session.Add(string sessionName,object sessionValue);
sessionName = Oluşturacağımız sessionımızın ismi
sessionValue = Oluşturacağımız sessionımızın değeri
Diğer bir yöntemimiz ise
//Session["sessionName"] = "sessionValue";
yukarıdaki işlemden pek farkı yok ikiside session oluşturmaktadır.

Session Silme
Oluşturduğumuz bir sessionı silmek istediğimiz zaman Remove() metodunu kullanırız.
//Session.Remove(string sessionName);
//parametre olarak silmek istediğimiz sessionName gönderiyoruz ve o sessionımızı silmiş oluyoruz.
Silme işleminin birkaç yolu daha mevcut bunlardan RemoveAt() ve RemoveAll()
//Session.RemoveAt(int sessionIndex);
//Oluşturduğumuz sessionlardan hangisini silmek istiyorsak o session index numarasını yazıyoruz bunu kullanmak sıkıntılı olabilir tavsiye etmiyorum kaçıncı index olduğunu bilmemiz gerekir yanlış sessionları silebiliriz.
//Session.RemoveAll();
Adında anlaşılacağına göre oluşturduğumuz bütün sessionlarımızı siler.

Sessiondaki Değeri Okuma
Burada oluşturduğumuz sessionımızın değerini okuyacağız.
//string sessiondakiDeğer = Session["sessionName"].ToString(); 
//Sessionıma sessionName ini vererek o isimdeki sessionımın değerini string değişkenimize atamış olduk.

Session Varlığını Kontrol Etme
Bir session oluşturduk ama bu session duruyor mu ya da oluştu mu ? bilmiyoruz bunun için sessionsınımızı kontrol etmemiz gerekir bunun içinde
string mesaj = (Session["sessionName"] == null ? "Sessionımız var":"Sessionımız yok");
kısa if ile (Ternary opertor) sessionımızı kontroll etmiş olduk buradaki kriterimiz session == null mı ?

Session kullanımından bahsetmiş olduk örnek bir login işlemi yapalım..
Index.cshtml [View] login formumuzu tasarladık.

Sıra geldi.. Controllerımıza burada HomeControllerımızı açıp şu kodları yazıyoruz.
 


 [HttpPost]
  public ActionResult Index(string kullaniciAd,string kullaniciSifre)
  {     
   //Session.Add("Kullanici", kullaniciAd);
   //ya da
   Session["Kullanici"] = kullaniciAd;
   return View();
  }

Basit olarak login işlemi yaptık kullanıcı tarayıcı kapatana kadar ya da oturum süresi dolana kadar bir daha login formunu göstermiyoruz. Login olduğu adı ekranda gösteriyoruz. 
Login olmadan önce sayfamız

Login oldukdan sonra sayfamız

Bildiğim kadarıyla bir şeyler yazmaya çalıştım inşallah birilerinin faydalanması dileğiyle..