private void Save() { bool keepOpen = false; try { DatabaseConfigManager.Save(tbx_user.Text, tbx_password.Text, tbx_database.Text, tbx_address.Text); } catch { Form form = new DatabaseUnavailable(); form.ShowDialog(); switch (form.DialogResult) { case DialogResult.Abort: Environment.Exit(0); break; case DialogResult.Yes: keepOpen = true; break; } } if (!keepOpen) { this.Close(); } }
/// <summary> /// 快速创建命令 /// </summary> /// <param name="dbid">数据库ID</param> /// <param name="con">连接对象</param> /// <returns>命令</returns> public static IDbCommand CreateCommand(int dbid, IDbConnection con) { var config = DatabaseConfigManager.GetConfig(dbid); var cmd = con.CreateCommand(); SetCommandPara(cmd, config); return(cmd); }
/// <summary> /// 快速创建命令 /// </summary> /// <param name="dbConnectionInfo">连接对象</param> /// <returns>命令</returns> public static IDbCommand CreateCommand(IDbConnectionInfo dbConnectionInfo) { var config = DatabaseConfigManager.GetConfig(dbConnectionInfo.DBID); var cmd = dbConnectionInfo.DbConnection.CreateCommand(); SetCommandPara(cmd, config); return(cmd); }
/// <summary> /// 根据DBID获取数据库访问连接池对象 /// </summary> /// <param name="dbid">数据库编号ID</param> /// <returns>数据库访问连接对象</returns> internal static DbConnectionPool GetConnectionPoolByDBID(int dbid) { DbConnectionPool dbConnectionPool; if (!_dbConnectionPoolDic.TryGetValue(dbid, out dbConnectionPool)) { var config = DatabaseConfigManager.GetConfig(dbid); IDBFactory dbFactory = DBFactoryManager.GetDBFactory(config); IDBInteraction dbInteraction = dbFactory.GetDBInteraction(); AddDbConnectionPool(config, dbInteraction); if (!_dbConnectionPoolDic.TryGetValue(dbid, out dbConnectionPool)) { throw new ApplicationException(string.Format("连接池中不包含数据库编号ID为:{0}的连接信息", dbid)); } } return(dbConnectionPool); }
private void UCDBStructControl_Load(object sender, EventArgs e) { if (this.DesignMode) { return; } try { DBTableInfoEx.ShowFieldChanged = this.ShowFieldChanged; List <DatabaseConfig> items = DatabaseConfigManager.GetAllConfigItems(); DropdownBoxHelper.BindingIEnumerableGenericToComboBox <DatabaseConfig>(comboBoxDB, items, nameof(DatabaseConfig.ConName)); dgvTables.ShowData(this._tableBindingList.DataSource, "UCDBStructControl.dgvTables", null, null, new string[] { nameof(DBTableInfoEx.ShowField) }); dgvTableFields.ShowData(this._fieldInfoBindingList.DataSource, "UCDBStructControl.dgvTableFields"); dgvIndex.ShowData(this._indexInfoBindingList.DataSource, "UCDBStructControl.dgvIndex"); this.checkMultTable_CheckedChanged(sender, e); } catch (Exception ex) { Loger.Error(ex); MessageBox.Show(ex.Message); } }
private void FTest_Load(object sender, EventArgs e) { if (this.DesignMode) { return; } var redirectAppenderToUI = (RedirectAppender)Loger.GetAppenderByName(null, "RedirectToUI"); if (redirectAppenderToUI != null) { redirectAppenderToUI.RedirectOuput += RedirectAppenderToUI_RedirectOuput;; } List <DatabaseConfig> itemList = DatabaseConfigManager.GetAllConfigItems(); DropdownBoxHelper.BindingIEnumerableGenericToComboBox <DatabaseConfig>(comboBoxDB, itemList, nameof(DatabaseConfig.ConName), itemList.Where(t => { return(t.DBID == _pssqlDbid); }).FirstOrDefault()); EFDbContext.OutputLog = true; EFEntityTypeManager.RegisterEntityType(3, typeof(DotnetWinFormApp.DB.Stu)); EFEntityTypeManager.RegisterEntityType(5, typeof(DotnetWinFormApp.DB.Stu)); }
/// <summary> /// 获取数据库访问实例 /// </summary> /// <param name="dbid">数据库编号ID</param> /// <returns>数据库访问实例</returns> public static IDBAccess GetDBAccessInstance(int dbid) { IDBAccess dbAccess; if (!_dbAccessDic.TryGetValue(dbid, out dbAccess)) { lock (_dicDBAccessLock) { if (!_dbAccessDic.TryGetValue(dbid, out dbAccess)) { var dbBConfigItem = DatabaseConfigManager.GetConfig(dbid); IDBFactory dbFactory = DBFactoryManager.GetDBFactory(dbBConfigItem); dbAccess = dbFactory.CreateDBAccess(dbBConfigItem); if (!_dbAccessDic.TryAdd(dbid, dbAccess)) { Loger.Warn(string.Format("添加数据库编号ID为{0}数据库访问实例失败", dbid), null); } } } } return(dbAccess); }
public DatabaseSettingsForm() { InitializeComponent(); this.BackColor = Resources.Colors.Background; foreach (Control control in this.Controls) { control.ForeColor = Resources.Colors.PrimaryText; if (control is TextBox) { control.BackColor = Resources.Colors.ContainterBackground; (control as TextBox).BorderStyle = BorderStyle.FixedSingle; } } if (!DatabaseConfigManager.Exists()) { DatabaseConfigManager.Create(); } DatabaseConfig config = DatabaseConfigManager.Load(); tbx_user.Text = config.Username; tbx_password.Text = config.Password; tbx_database.Text = config.Database; tbx_address.Text = config.Address; }