异常处理(我想检查connection.Open()是否运行)

时间:2015-01-08 14:52:17

标签: c# exception exception-handling

我希望我的代码在数据库不可用时发出警告或其他内容。 (这就是我评论连接字符串的原因),但我的网站崩溃了。

我创建了这个类因为程序的许多部分都使用了这个连接字符串(登录页面,注册页面,用户面板页面等),所以如果我想在将来改变某些东西,这是唯一的字符串我必须改变。

namespace Fatture.Data.User
{
   public class DbConnection
   {
      public MySqlConnection ConnessioneDb()
      {
         MySqlConnection conn = new MySqlConnection(/*ConfigurationManager.ConnectionStrings["ConnectionStringloginDb"].ConnectionString*/);
         try
         {
            conn.Open();
         }
         catch (Exception ex)
         {
            throw new Exception("I can't connect to the database", ex);               

         }
         return conn;
      }
   }
}

2 个答案:

答案 0 :(得分:2)

使用异常处理......

var connector = new DbConnection();

try
{       
    var connection = connector.ConnessioneDb();
}
catch (Exception ex)
{
    // show message to user: database not available
}

虽然您必须在访问数据库的任何地方放置此功能。相反,您也可以为整个站点设置错误处理。

答案 1 :(得分:1)

抓住异常......

try
{       
    var conn =  new DbConnection().ConnessioneDb();
}
catch (Exception ex)
{
     // Notify user here
}