Asp.net mvc 2 如何在单个方法中处理异常,而不是在mvc2(.net)中的每个方法中处理异常

Asp.net mvc 2 如何在单个方法中处理异常,而不是在mvc2(.net)中的每个方法中处理异常,asp.net-mvc-2,Asp.net Mvc 2,我认为可以用单个方法处理整个页面或整个控制器的异常 这是我的密码 public ActionResult BindProductDetails(string StartIndex, string EndIndex, string HeaderName, string SortBy, string Search, string OrderstoDisplay) { List<Products> objProduct = new List<Produ

我认为可以用单个方法处理整个页面或整个控制器的异常

这是我的密码

    public ActionResult BindProductDetails(string StartIndex, string EndIndex, string HeaderName, string SortBy, string Search, string OrderstoDisplay)
    {
        List<Products> objProduct = new List<Products>();

        try
        {
            objProduct = objProductsModel.GetProductsList(Convert.ToInt32(Session["MerchantID"]), Convert.ToInt32(StartIndex), Convert.ToInt32(EndIndex), HeaderName.Trim(), SortBy, Search, Convert.ToInt32(Session["userID"]), Convert.ToInt32(OrderstoDisplay), Session["ConnectionString"].ToString());
            ViewData["ProductCount"] = ProductsModel.ProductCount;
            ViewData["OrdersToDisplay"] = ProductsModel.OrdersToDisplay;
            CurrentProductCount = ProductsModel.CurrentCount;
            return PartialView("PVProducts", objProduct);
        }
        catch (Exception ex)
        {
           Logger.WriteToLog(objUserDetails.ErrorType, objUserDetails.MerchantName, objUserDetails.UserName, "ProductsController.BindProductDetails()", ex.Message, null, objProduct);
            return null;
        }
    }

    #region GetWarehouseDetails
    public string GetWarehouseDetails()
    {
        string strMerchantWarehouses = string.Empty;
        ProductDetails objUsersWarehouse = new ProductDetails();
        try
        {
            objUsersWarehouse = objProductsModel.GetWarehouseInfo(Convert.ToInt32(Session["MerchantID"]), Session["ConnectionString"].ToString());
            strMerchantWarehouses = json.toJshon(objUsersWarehouse);
        }
        catch (Exception ex)
        {
           Logger.WriteToLog(objUserDetails.ErrorType, objUserDetails.MerchantName, objUserDetails.UserName, "ProductsController.GetWarehouseDetails()", ex.Message, null, objUsersWarehouse);
        }
        return strMerchantWarehouses;
    }
    #endregion
public ActionResult BindProductDetails(字符串开始索引、字符串结束索引、字符串标题名称、字符串排序方式、字符串搜索、字符串顺序显示)
{
List objProduct=新列表();
尝试
{
objProduct=objProductsModel.GetProductsList(Convert.ToInt32(会话[“MerchantID]”)、Convert.ToInt32(StartIndex)、Convert.ToInt32(EndIndex)、HeaderName.Trim()、SortBy、Search、Convert.ToInt32(会话[“userID]”)、Convert.ToInt32(OrderstoDisplay)、会话[“ConnectionString”].ToString());
ViewData[“ProductCount”]=ProductsModel.ProductCount;
ViewData[“OrdersToDisplay”]=ProductsModel.OrdersToDisplay;
CurrentProductCount=ProductsModel.CurrentCount;
返回PartialView(“PVProducts”,OBJPProduct);
}
捕获(例外情况除外)
{
Logger.WriteToLog(objUserDetails.ErrorType,objUserDetails.MerchantName,objUserDetails.UserName,“ProductsController.BindProductDetails()”,例如Message,null,objProduct);
返回null;
}
}
#区域GetWarehouseDetails
公共字符串GetWarehouseDetails()
{
string strMerchantWarehouses=string.Empty;
ProductDetails objUsersWarehouse=新产品详细信息();
尝试
{
objUsersWarehouse=objProductsModel.GetWarehouseInfo(Convert.ToInt32(Session[“MerchantID”])、Session[“ConnectionString”].ToString());
strMerchantWarehouses=json.toJshon(objUsersWarehouse);
}
捕获(例外情况除外)
{
Logger.WriteToLog(objUserDetails.ErrorType,objUserDetails.MerchantName,objUserDetails.UserName,“ProductsController.GetWarehouseDetails()”,例如消息,null,objUsersWarehouse);
}
返回strmerchant仓库;
}
#端区
每次我都在处理每个方法中的异常。我需要另一种方法


单个方法处理单个控制器或整个应用程序异常,如(会话处理)的(Actionfilter)

您应该在Global.asax.cs中覆盖application\u错误,并将代码放入此方法中