连接未关闭,连接的当前状态为打开

用户名

我正在编写一个ASP.NET应用程序。在我的数据层中,在查询之前和之后都会打开和关闭一个sql连接。SqlConnection被保留为单个类的私有字段。类中的每个数据库调用都使用相同的结构:

        conn.Open();

        try
        {
            // database querying here
        }
        finally
        {
            conn.Close();
        }

但是,在极少数情况下,我会遇到例外情况:“连接未关闭。连接的当前状态为“打开”。重现该问题是不可能的,因为它很少来自代码的不同部分。我的应用程序涉及一些线程,但是新线程也创建了新的数据层类,因此也创建了新的连接对象。

我不明白如何使用上面的代码在开放中徘徊。打开连接后不应该总是关闭连接,从而使上述异常不可能发生吗?

DGibbs

很可能在try未处理的块中引发了异常最终尝试在MSDN中查看此说明

在已处理的异常内,可以保证关联的finally块可以运行。但是,如果未处理异常,则finally块的执行取决于如何触发异常展开操作。

using无论如何,我建议将连接包装在一个块中:

using (SqlConnection connection = new SqlConnection(connectionString))
{
     //etc...
}

或者,将捕获块添加到try-finally

    conn.Open();

    try
    {

    }
    catch
    {

    }
    finally
    {
        conn.Close();
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

连接未关闭。连接的当前状态为打开

来自分类Dev

随机行为:“连接未关闭。连接的当前状态为打开。”

来自分类Dev

Visual Studio和SQL错误连接未关闭。连接的当前状态为打开

来自分类Dev

连接未关闭。连接的当前状态为打开。C#错误

来自分类Dev

错误:未将对象引用设置为对象的实例。/未关闭连接。连接的当前状态为打开

来自分类Dev

ExecuteNonQuery需要打开且可用的连接。连接的当前状态为关闭

来自分类Dev

System.InvalidOperationException:ExecuteReader需要打开且可用的连接。连接的当前状态为关闭

来自分类Dev

我已经尽力解决了,但是我做不到。请帮助我。连接未关闭。连接的当前状态为打开

来自分类Dev

自定义角色提供程序-{“连接未关闭。连接的当前状态为正在连接。”}

来自分类Dev

连接的当前状态为连接中

来自分类Dev

System.InvalidOperationException: 连接未关闭。连接的当前状态是连接

来自分类Dev

连接没有关闭连接的当前状态是打开的 c#

来自分类Dev

错误:ExecuteReader需要打开且可用的连接。连接的当前状态为打开

来自分类Dev

ExecuteReader需要打开且可用的连接-当前状态为关闭

来自分类Dev

连接没有关闭。连接的当前状态是 Open

来自分类Dev

Executenonquery 需要打开且可用的连接。连接当前状态是关闭的

来自分类Dev

ConnectionString属性。连接的当前状态

来自分类Dev

ExecuteReader需要一个开放且可用的连接。连接的当前状态为正在连接。在执行阅读器中

来自分类Dev

NetworkManager:将设备的当前连接设置为计量

来自分类Dev

打开/关闭ADO连接

来自分类Dev

连接未关闭

来自分类Dev

连接未关闭错误

来自分类Dev

为什么会出现错误“尝试打开未关闭的连接”?

来自分类Dev

打开和关闭mysql连接

来自分类Dev

Django:Postgres连接未关闭

来自分类Dev

内存泄漏或连接未关闭

来自分类Dev

连接未关闭(HikariCP,Postgres)

来自分类Dev

SqlCommand之间的连接未关闭

来自分类Dev

连接未打开:MySql BeginTransaction

Related 相关文章

  1. 1

    连接未关闭。连接的当前状态为打开

  2. 2

    随机行为:“连接未关闭。连接的当前状态为打开。”

  3. 3

    Visual Studio和SQL错误连接未关闭。连接的当前状态为打开

  4. 4

    连接未关闭。连接的当前状态为打开。C#错误

  5. 5

    错误:未将对象引用设置为对象的实例。/未关闭连接。连接的当前状态为打开

  6. 6

    ExecuteNonQuery需要打开且可用的连接。连接的当前状态为关闭

  7. 7

    System.InvalidOperationException:ExecuteReader需要打开且可用的连接。连接的当前状态为关闭

  8. 8

    我已经尽力解决了,但是我做不到。请帮助我。连接未关闭。连接的当前状态为打开

  9. 9

    自定义角色提供程序-{“连接未关闭。连接的当前状态为正在连接。”}

  10. 10

    连接的当前状态为连接中

  11. 11

    System.InvalidOperationException: 连接未关闭。连接的当前状态是连接

  12. 12

    连接没有关闭连接的当前状态是打开的 c#

  13. 13

    错误:ExecuteReader需要打开且可用的连接。连接的当前状态为打开

  14. 14

    ExecuteReader需要打开且可用的连接-当前状态为关闭

  15. 15

    连接没有关闭。连接的当前状态是 Open

  16. 16

    Executenonquery 需要打开且可用的连接。连接当前状态是关闭的

  17. 17

    ConnectionString属性。连接的当前状态

  18. 18

    ExecuteReader需要一个开放且可用的连接。连接的当前状态为正在连接。在执行阅读器中

  19. 19

    NetworkManager:将设备的当前连接设置为计量

  20. 20

    打开/关闭ADO连接

  21. 21

    连接未关闭

  22. 22

    连接未关闭错误

  23. 23

    为什么会出现错误“尝试打开未关闭的连接”?

  24. 24

    打开和关闭mysql连接

  25. 25

    Django:Postgres连接未关闭

  26. 26

    内存泄漏或连接未关闭

  27. 27

    连接未关闭(HikariCP,Postgres)

  28. 28

    SqlCommand之间的连接未关闭

  29. 29

    连接未打开:MySql BeginTransaction

热门标签

归档