3 Nisan 2013 Çarşamba

Asp.NET MVC - HttpStatusCodeResult

Asp.NET MVC uygulamasında kullanıcı tarafından yapılan bir isteğin cevabı olarak döneceğiniz ActionResult, bazı durumlarda istediğiniz bir hata kodu ile sayfanın sonlandırılması olabilir.

Örneğin veritabanında kayıtlı olan sayfaların kullanıcılara gösterilmesini isterken olmayan bir sayfa çağrıldığında sayfanın 404 hata kodu ile bitirilmesini isteyebilirsiniz. Böyle bir sonuç dönebilmek için HttpStatusCodeResult nesnesini kullanabilirsiniz.

Aşağıdaki örnekte görüleceği gibi eğer pageURL veritabanında yoksa, kayıtlı bir hata sayfası(ErrorPage) var mı diye kontrol ediyor, eğer bu da mevcut değil ise HTTP Response 404 koduyla bitiriliyor.


public ActionResult LoadPage(string pageURL)
{
  PageDTO page = PageBusiness.GetByURL(pageURL);
  if (page == null)
  {
    page = PageBusiness.GetByURL("ErrorPage");
    if (page != null)
    {
       return Redirect("~/ErrorPage");    
    }
    else
    {
       return new HttpStatusCodeResult(404, "Page Not Found");
    }
  }
  return View(String.Format("~/getDBPage/{0}.cshtml", pageURL));
}





1 yorum: