相关疑难解决方法(0)

在C#中重新抛出异常的正确方法是什么?

我有一个问题,源于我的伙伴以不同于我的方式做事.

这样做更好:

try
{
    ...
}
catch (Exception ex)
{
    ...
    throw;
}
Run Code Online (Sandbox Code Playgroud)

或这个:

try
{
    ...
}
catch (Exception ex)
{
    ...
    throw ex;
}
Run Code Online (Sandbox Code Playgroud)

他们做同样的事情吗?这个比那个好吗?

.net c# exception-handling

435
推荐指数
7
解决办法
18万
查看次数

捕获和重新抛出.NET异常的最佳实践

捕获异常并重新抛出异常时需要考虑哪些最佳实践?我想确保保留Exception对象InnerException和堆栈跟踪.以下代码块在处理此方式时是否存在差异?

try
{
    //some code
}
catch (Exception ex)
{
    throw ex;
}
Run Code Online (Sandbox Code Playgroud)

VS:

try
{
    //some code
}
catch
{
    throw;
}
Run Code Online (Sandbox Code Playgroud)

.net c# exception-handling rethrow

279
推荐指数
8
解决办法
18万
查看次数

标签 统计

.net ×2

c# ×2

exception-handling ×2

rethrow ×1