SQL Server:失去连接后重新连接

本文关键字:重新连接 连接 失去 Server SQL | 更新日期: 2023-09-27 18:32:05

我想要打开WPF程序,然后SQL Server数据库关闭,当数据库重新联机时,WPF应该自动连接到数据库。如果我重新启动SQL Server,请保持活动程序并尝试连接到数据库,直到连接可用。我应该捕获异常然后重复某些内容吗?

我尝试重新启动应用程序,然后出现异常,但无论如何我的程序崩溃并停止工作。

using (SqlConnection connection = new SqlConnection(connectionString))
{
    try
    {
        connection.Open();
    }
    catch (SqlException ex)
    {
        //how stop crash? //
        //System.Windows.Forms.Application.Restart();
        return ex.ToString();
    }
    finally
    {
        connection.Close();
    }
}

SQL Server:失去连接后重新连接

要做的是将整个应用程序的连接创建集中在单个静态方法中。

public static SqlConnection getConnection()
{
      string conn = string.Empty;
      conn = System.Configuration.ConfigurationManager.ConnectionStrings["quality"].ConnectionString;
      SqlConnection aConnection = new SqlConnection(conn);
      return aConnection;
}

在您的代码中,每次使用连接时都尝试以下操作:

public int test()
{
    SqlConnection conn = null;
    try
    {
        try
        {
            conn = StaticContext.getConnection();
            conn.Open();
            //TODO OPERATION

        }
        catch (Exception e)
        {
            //return ex.ToString();
            return -1;//MY_ERROR_CODE;
        }
    }

    finally
    {
        conn.Close();
    }
    return 1//MY_SUCCES_CODE;
}

当您调用DB方法管理时,因此出现错误:

if (test() == -1)
{
   //MESSAGE BOX ERROR OR OTHER
}
相关文章: