Example #1
0
        /// <summary>
        /// Bắt buộc phải gọi mới thấy được sự thay đổi CSDL do nơi khác chỉnh sửa,
        /// Tất cả Object get ra bởi DBInstace cũ sẽ phải reload mới có thể tiếp tục sử dụng lại được,
        /// Nếu không Object cũ sẽ vẫn phải chịu sự giám sát của DbContext cũ
        /// </summary>
        public static void reNew()
        {
            if (db != null)
            {
                db.Dispose();
                db = null;
            }

            db = DB;
        }
 /// <summary>
 /// Có hỗ trợ tự động tạo cấu trúc CSDL nếu chưa có
 /// </summary>
 public static void prepare_db_structure()
 {
     try
     {
         using (OurDBContext tmp = new OurDBContext(Global.server_database.get_connection_string(), true))
         {
             tmp.isValidModel();
             tmp.forceSeed();
         }
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.ToString());
     }
 }
 /// <summary>
 /// Kiểm tra kết nối tới Database
 /// </summary>
 /// <returns>-1: Not exist, -2: model backing changed, >0: OK</returns>
 public static int isReady(int TimeOut = -1)
 {
     //Check if target database is ready
     if (DatabaseHelper.isExist(
         Global.server_database.get_connection_string()
     ))
     {
         //Check model backing
         using (OurDBContext tmp = new OurDBContext(Global.server_database.get_connection_string(), false))
         {
             if (tmp.isValidModel())
             {
                 return 1;
             }
         }
     }
     return -2;
 }
            /// <summary>
            /// Tự động tạo cấu trúc CSDL nếu chưa có
            /// </summary>
            public static void prepare_db_structure()
            {
                //Kiểm tra có sử dụng DBCache
                if (!Global.local_setting.use_db_cache)
                {
                    return;
                }

                try
                {
                    using (OurDBContext tmp = new OurDBContext(Global.client_database.get_connection_string(), true))
                    {
                        tmp.isValidModel();
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.ToString());
                }
            }
 /// <summary>
 /// Kiểm tra kết nối tới Database
 /// </summary>
 /// <returns>-1: Not exist, -2: model backing changed, >0: OK</returns>
 public static int isReady(int TimeOut = -1)
 {
     //Check if target database is ready
     if (DatabaseHelper.isExist(
         Global.client_database.get_connection_string()
     ))
     {
         try
         {
             //Check model backing
             using (OurDBContext tmp = new OurDBContext(Global.client_database.get_connection_string(), false))
             {
                 if (tmp.isValidModel())
                 {
                     return 1;
                 }
             }
         }
         catch (Exception ex)
         {
             Debug.WriteLine(ex);
             return -2;
         }
     }
     return -2;
 }
Example #6
0
        /// <summary>
        /// Bắt buộc phải gọi mới thấy được sự thay đổi CSDL do nơi khác chỉnh sửa,
        /// Tất cả Object get ra bởi DBInstace cũ sẽ phải reload mới có thể tiếp tục sử dụng lại được,
        /// Nếu không Object cũ sẽ vẫn phải chịu sự giám sát của DbContext cũ
        /// </summary>
        public static void reNew()
        {
            if (db != null)
            {
                db.Dispose();
                db = null;
            }

            db = DB;
        }