欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

MVC異常處理的示例分析-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)MVC異常處理的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元屯溪做網(wǎng)站,已為上家服務(wù),為屯溪各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108

一、MVC框架自己的全局異常處理

在MVC中,框架已經(jīng)給我們一共了一套全局異常處理的特性類HandleErrorAttribute類。我們可以在MVC中的App_Start文件夾中的FilterConfig.cs文件中找到這么一行代碼

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
 {
    filters.Add(new HandleErrorAttribute());
  }

這個就是實例化一個HandleErrorAttribute類,放到過濾器中。然后我們的Views>Shared文件夾中有一個Error.cshtml的頁面,其中,該頁面里的Model的類型為System.Web.Mvc.HandleErrorInfo,這個是MVC框架已經(jīng)給我寫好了的,我們可以直接拿來用。

在Error.cshtml頁面中,我們可以做進一步處理,來顯示錯誤信息,根據(jù)需求來展示錯誤信息。這些錯誤信息都會在System.Web.Mvc.HandleErrorInfo類中的某些屬性中找到的。

例如:一下是Error.cshtml。

MVC異常處理的示例分析

我們在Control中,故意寫一個異常出來:

public class HomeController : Controller
  {
    public ActionResult Index()
    {
      string i = "12a";
      int j = Convert.ToInt32(i);
      return View();
    }
  }

運行一下,我們來看一下結(jié)果。

MVC異常處理的示例分析

以上就是運行的結(jié)果,我們可以看到,System.Web.Mvc.HandleErrorInfo類還是有很多豐富的屬性的,我們可以直接拿來用。

MVC自帶的這套異常處理默認的是處理錯誤碼為500系列的異常,如果是404,就不會走這個了。不過,我們可以通過Web.config文件的設(shè)置,來進行處理。看我們?nèi)绾翁幚淼摹?/p>

首先,我們先將Error.cshtml頁補充完整,先給他加一個Control,然后,我們再寫一個專門處理404的View和Control。如下

namespace Exception.Controllers
{
  public class SharedController : Controller
  {
    // GET: Shares
    public ActionResult Error()
    {
      return View();
    }

    public ActionResult NotFondError()
    {
      return View();
    }
  }
}

頁面:

MVC異常處理的示例分析

然后我們在瀏覽器地址中寫一個錯誤的地址,看一下結(jié)果:

MVC異常處理的示例分析

二、重寫MVC中的異常處理

在開發(fā)中,我們經(jīng)常有這么一個需求,我們需要將異常通過文本日志的方式記錄下來并保存,那么MVC自帶的異常處理方式System.Web.Mvc.HandleErrorInfo沒有這么一個功能,那么我們通過重寫的方式來讓它有這個功能。下面,我們來看看如何重寫。

首先我們建一個類,讓這個類繼承System.Web.Mvc.HandleErrorInfo,然后重寫System.Web.Mvc.HandleErrorInfo中的虛方法:OnException方法。

public class CustomHandleErrorAttribute : HandleErrorAttribute
  {
    public override void OnException(ExceptionContext filterContext)
    {
      base.OnException(filterContext);
      var err = filterContext.Exception.Message;//錯誤內(nèi)容
      //=============================
      //將錯誤記錄到日志中
      //=============================
    }
  }

然后,將FilterConfig.cs加入:

public class FilterConfig
  {
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
      filters.Add(new HandleErrorAttribute());
      filters.Add(new CustomHandleErrorAttribute());
    }
  }

這樣,我們就可以完成我們的需求了。

感謝各位的閱讀!關(guān)于“MVC異常處理的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

分享題目:MVC異常處理的示例分析-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://aaarwkj.com/article8/hseop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、搜索引擎優(yōu)化、網(wǎng)站設(shè)計公司、外貿(mào)建站定制開發(fā)、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
亚洲伊人av第一页在线观看| 美女高潮久久久777| 啊啊…嗯嗯…用力免费观看视频| 亚洲高清有码在线观看| 亚洲乱码中文字幕人妻| 国内校园性猛交视频网站| 尤物视频最新在线观看| 亚洲一区二区三区av蜜桃| 久久精品亚洲夜色国产av| 色婷婷狠狠久久综合中文一本| 亚洲人妖视频在线观看| 亚洲欧美高清一区二区| 国产伦理免费精品中文字幕| 亚洲一区二区三区黄色| 亚洲视频免费在线一区| 日韩人成理论午夜福利| 国产乱肥老妇国产一区二| 日本韩国亚洲欧美一区二区| 一起草视频在线观看视频| 日韩av一区三区在线| 人妻少妇性色精品专区av| 国产青草视频免观看视频| 久久中文字幕av一区| 久久久国产精品久久久| 极品少妇高潮在线观看免费| 粗暴蹂躏中文一区二区三区| 亚洲不卡免费在线视频| 九九视频在线精品免费观看| 亚洲成人av综合在线| 青青草原在线影视一区| 亚洲国产日韩在线精品| 亚洲国产成人欧美日韩另类| 亚洲一区二区在线视频在线观看| 久久综合婷婷亚洲五月| 最新日本人妻中文字幕| 中国一级黄片免费欧美| 国产精品国产成人生活片| 久久精品国产亚洲av麻| 亚洲精品日韩国产3区| 亚洲精品一区二区成人影院| 日韩精品在线不卡一区|