示例#1
0
文件: Db.cs 项目: radtek/SqlAccessor
        /// <summary>
        /// connStrで指定された接続文字列でデータベースに接続できるか判定する
        /// </summary>
        /// <param name="dbms">DBMSの種別</param>
        /// <param name="connStr">接続文字列</param>
        /// <returns></returns>
        /// <remarks></remarks>
        public static bool IsConnectable(SqlBuilder.DbmsType dbms
                                         , string connStr)
        {
            bool   ret     = false;
            Db     aDb     = null;
            DbConn aDbConn = null;

            try {
                aDb     = new Db(dbms, connStr);
                aDbConn = aDb.CreateDbConn();
                aDbConn.Dispose();
                aDb.Dispose();
                //接続、及び切断ができたら接続可と判定する
                ret = true;
            } catch (Exception ex) {
                //接続、又は切断時に例外が発生したら接続不可と判定する
                ret = false;
            } finally {
                if (aDbConn != null)
                {
                    aDbConn.Dispose();
                }
                if (aDb != null)
                {
                    aDb.Dispose();
                }
            }

            return(ret);
        }
示例#2
0
 protected override void DisposeImp(bool disposing)
 {
     if (_reUseCount > 0)
     {
         _reUseCount -= 1;
         _dbConn.SemiDispose(disposing);
     }
     else
     {
         _dbConn.Dispose();
     }
 }