ページ全体またはコントローラー全体に対して単一のメソッドで例外を処理することができます。
ここに私のコードがあります
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
毎回、すべてのメソッドで例外を処理しています。別の方法が必要です。
(Actionfilter )for(session handling) のような単一のメソッド処理単一のコントローラーまたはアプリケーション全体の例外