Error Handler در ASP.NET MVC
جمعه 13 آذر 1394در این مقاله میخواهیم بررسی کنیم که چگونه میتوانیم به خطاها رسیدگی کنیم. به طور کلی توسعه دهندگان به طورمنظم با خطا ها مبارزه میکنند در دات نت ما از بلوک های Try Catch این کار را انجام میدهیم. اما در mvc ویژگی های بیشتری وجود دارد.
مراحل زیر را دنبال کنید.
در مرحله اول یک پروژه ویژوال استودیو از نوع Mvc ایجاد کنید.
در مرحله بعد Internet Application را انتخاب کنید و روی دکمه ok کلیک کنید.
Home controller.cs را باز کنید و کد زیر را اضافه نمایید.
public ActionResult Index() { throw new Exception("Error occured"); }
هنگامی که شما برنامه را اجرا نمایید صفحه نمایش زیر نشان داده میشود.
وب کانفیگ را اجرا نمایید و <customerror mode=“on”> را به ان اضافه کنید.
<customErrors mode="On"> </customErrors>
هنگامی که ما یک Mvc ایجاد میکنیم یک Shared folder در ان قرار میدهیم سپس درون ان فایل Error.Cshtml را قرار میدهیم.
این صفحه پیش فرض برای خطاست.در حال حاضر یک صفت [HandleError] در action method اضافه کنید.
[HandleError] public ActionResult Index() { throw new Exception("Error occurred"); }
در حال حاضر برنامه را اجرا کنید
گاهی اوقات از سرور صفحه ای را میخواهیم که موجود نیست با خطای 404 روبرو می شویم.
یک کنترلر جدید با نام ErrorController ایجاد کنید
یک action method به عنوان PageNotFound ایجاد نمایید.
public ActionResult PageNotFound() { return View(); }
یک View برای PageNotFound ایجاد کنید. و هر پیغامی که میخواهید در ان قرار دهید. وب کانفیگ خود را باز نمایید و ویژگی <customerror> را اجرا نمایید.
<customErrors mode="On"> <error statusCode="404" redirect="~/Error/PageNotFound"/> </customErrors>
در حال حاضر صفحه ای که در دسترس نیست را اجرا نمایید شما یک پیغام از ErrorController ایجاد شده دریافت میکنید.
- ASP.net MVC
- 2k بازدید
- 8 تشکر