c# - 在 try catch 中使用 try catch 好吗?

标签 c# asp.net .net c#-4.0

<分区>

Possible Duplicate:
Are nested Try/Catch blocks a bad idea?

目前我在 try catch 中使用 try catch ?当前的 senario 在我们的应用程序中需要它。

void MyFun()
{
    try
    {
        //Process logic 1
        // ......
        try
        {
            //Process logic 2
            // ......
        } catch (Exception ex)
        {
            //write an error details in database
        }

        //Process Logic 3
        // ......

    } catch (Exception ex)
    {
        //show error msg
    }
}

最佳答案

这没有特别的问题,特别是如果你想以不同的方式处理异常。
但是,如果内部异常和外部异常分别是不同类型的 E1, E2 并且 E1 不是 E2 的父级,则可以有两个相邻的 catch 子句。

try
{
  // do something
}
catch (E1 e1)
{
}
catch (E2 e2)
{
}

正如 Rob 和 J.Steen 所指出的 - 这与问题中的情况略有不同,因为在这种情况下 E1 在代码不会执行后被抛出。

关于c# - 在 try catch 中使用 try catch 好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13759759/

相关文章:

c# - 是否可以在同一个 ASP.NET 应用程序中同时进行常规登录和 ActiveDirectory 登录?

c# - ASP.NET/C# 等同于用于 SQL 注入(inject)的 Microsoft 源代码分析器 (MSSCASI_ASP)?

.net - 当我得到一件商品时 $Expand 不起作用

c# - DLL 的入口点

c# - Azure Blob 存储 - 上传速度非常慢

asp.net - The source map 'data:application/json;base64,' ;' for file ' domain/systemjs/dist/system.src.js' 由于错误无法正确加载

c# - 在 C# 中调用基本构造函数

c# - 强制 trackbar 值为十倍

c# - 存在同名数据库,或无法打开指定文件,或位于 UNC 共享上

c# - map 列表 <> 与 Automapper?