c# - 如何区分 InvalidOperationException 异常类型?

标签 c# exception try-catch invalidoperationexception

如何检测 InvalidOperationException 类型

这是内部异常消息:

System.InvalidOperationException: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.

我需要准确地检测到这种类型的异常来处理它。 我可以知道它的 HResult 编号或异常代码吗?还是其他方式?

最佳答案

这段代码可能有帮助

try
{
    //your code here...
}
catch (Exception exception) when (exception.InnerException is InvalidOperationException)
{
    var exceptionMessage = "ExecuteNonQuery requires an open and available Connection";
    if (exception.Message.Contains(exceptionMessage) || exception.InnerException.Message.Contains(exceptionMessage))
    {
        //handle it...
    }
}

关于c# - 如何区分 InvalidOperationException 异常类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59019614/

相关文章:

c# - 将具有 C# 和 VB 的 ASP.NET 网站转换为 Web 应用程序

C# 异步套接字客户端阻塞主界面线程

android - 改造 |句柄 "server not found exception"

Javascript Google Signin 未捕获异常 [object Object]

android - 如何捕获媒体播放器数据源无文件错误?

c# - 覆盖 'public' 继承成员时无法更改访问修饰符 '

c# - 从 dbcontext 中的方法返回通用表

java - 用于在检查异常和非检查异常之间做出决定的清晰简单的规则

python - 使用带有 try-except block 的 python "with"语句

C++ Visual Studio 2013 展开对象