【问题标题】:What do I do with my exceptions in asp.net?我如何处理我在 asp.net 中的异常?
【发布时间】:2009-02-02 03:07:18
【问题描述】:

我正在开发一个 ASP.NET MVC 应用程序并且刚刚开始处理错误。帮我解决将错误消息返回给用户的问题。

我有一个控制器:

    [AcceptVerbs(HttpVerbs.Get)]
    public ActionResult Show(string callNumber)
    {
        ServiceCallService sc = new ServiceCallService();
        return View(sc.GetServiceCallByCallNumber("", callNumber));
    }

服务:

    public ServiceCall GetServiceCallByCallNumber(string custID, string callNumber)
    {
        ServiceCall sc = new ServiceCall();
        sc = _serviceCallRepository.GetServiceCallByCallNumber(custID, callNumber);
        return sc;
    }

一个存储库:

    public ServiceCall GetServiceCallByCallNumber(string custID, string callNumber)
    {
        ServiceCall sc = new ServiceCall();

        try
        {
            LoginToDB();
            sc.CallNumber = "123";
        }
        catch (Exception e)
        {
            logger.error(Server.GetLastError());
        }
        finally
        {
            LogoutFromDB();
        }
        return sc;
    }

假设 LoginToDB() 方法有问题。我正在记录错误,但如何将错误消息返回到控制器,然后返回到视图。

谢谢。

【问题讨论】:

    标签: c# asp.net asp.net-mvc logging error-handling


    【解决方案1】:

    最简单的方法是:-

    1) 在 ASP.NET MVC Release Canditate 1 中使用内置模型验证(从 asp.net/mvc 下载)。

    2) 重新抛出异常并在控制器操作中捕获它,然后将漂亮的自定义错误消息传递给视图以呈现给用户 - 使用 ViewData["error"] 或类似的东西传递它。

    【讨论】:

      猜你喜欢
      • 2015-05-29
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      • 2012-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多