C# 如何从外部类捕获异常
我有一个外文类,它抛出异常“未知异常”。 我想在我的代码中捕捉它,并编写类似“错误!执行以下步骤:…”的消息 所以,我的代码:C# 如何从外部类捕获异常,c#,exception,C#,Exception,我有一个外文类,它抛出异常“未知异常”。 我想在我的代码中捕捉它,并编写类似“错误!执行以下步骤:…”的消息 所以,我的代码: try { var p = new MyObject(prms); // this code failed and throw exception-"Unknown exception" return p; } catch (Exception ex) { // Output ex Console.Wri
try
{
var p = new MyObject(prms); // this code failed and throw exception-"Unknown exception"
return p;
}
catch (Exception ex)
{
// Output ex
Console.WriteLine("Error! "+ex.Message);
}
如何包装外部异常并显示我的文本?
谢谢
p.S.外国代码如下所示:
try
{
lock (_lockObject)
{
return MyObject();
}
}
catch (Exception exp)
{
throw ThrowWrapper(exp);
}
类不会抛出异常,函数会抛出异常。如果
MyObject
的构造函数抛出异常,则显示的代码将捕获该异常。如果MyObject
的另一个成员函数抛出,则在调用此成员函数的位置需要一个try catch
。可以在此处找到如何将“外部”异常包装到自己的异常中的一个很好的示例:
为什么不做一些简单的事情,比如 使用现有代码;(请参见catch中的代码更改) 请注意,这是一种“快速”处理此问题的方法,正确的方法是创建您自己的异常,并按照其他一些答案的建议进行处理 希望有帮助
这不会达到您想要的效果吗?那么您的代码有什么问题吗?我觉得还可以。定义
外部异常
?目前,这段代码将捕获try中的任何异常。啊,也许你说的是将原始异常包装在你自己的内部,这样原始异常就是内部异常?这可能会有帮助:Surfbutler,是的,我想将原始异常包装在我自己的内部)
try
{
var p = new MyObject(prms); // this code failed and throw exception-"Unknown exception"
return p;
}
catch (Exception ex)
{
If (ex.Message.Contains("Unknown exception"))
{
//Add code here to handle the Unknown exception
}
else
{
Console.WriteLine("Error! "+ex.Message);
}
}