在C#中,可以使用Throw关键字将异常重新抛出并保留原始异常信息。这样可以在处理异常时保留原始异常的相关信息,并将其传递到更高级别的异常处理程序中。
以下是一个示例代码,演示如何使用Throw关键字在异常链中重新抛出异常:
try
{
// 尝试执行一些可能引发异常的代码
}
catch (Exception ex)
{
// 在捕获到异常后重新抛出异常,保留原始异常信息
throw new CustomException("An error occurred while processing data.", ex);
}
在上面的示例中,当捕获到异常时,使用Throw关键字重新抛出异常,并传递一个自定义异常类CustomException的实例,并将原始异常ex作为参数传递给构造函数。这样就能够在异常链中保留原始异常的相关信息。
注意:在重新抛出异常时,应该确保将原始异常信息传递给新的异常,以便在更高级别的异常处理程序中能够获取到完整的异常链信息。