public sealed override void Open(CoreEA.LoginInfo.BaseLoginInfo info) { LoginInfo_Firebird myInfo = info as LoginInfo_Firebird; LoginInfo_ForAllDbTypes allInfo = info as LoginInfo_ForAllDbTypes; if ((myInfo == null) && (allInfo == null)) { throw new ArgumentException("Only Support Firebird login info and AllDBTypes Info"); } if (IsOpened) { return; } string myConnString = string.Empty; try { if (allInfo != null) { myInfo = new LoginInfo_Firebird(); myInfo.DataFile = allInfo.Database; myInfo.Password = allInfo.Pwd; myInfo.DataSource = allInfo.Server; myInfo.Username = allInfo.Username; } FbConnectionStringBuilder strBuilder = new FbConnectionStringBuilder(); strBuilder.Charset = myInfo.CharSet; strBuilder.ConnectionLifeTime = myInfo.ConnectionLifeTime; strBuilder.Database = myInfo.DataFile; strBuilder.DataSource = myInfo.DataSource; strBuilder.Dialect = myInfo.Dialect; strBuilder.MaxPoolSize = myInfo.MaxPollSize; strBuilder.MinPoolSize = myInfo.MinPollSize; strBuilder.PacketSize = myInfo.PacketSize; strBuilder.Password = myInfo.Password; strBuilder.Pooling = myInfo.IsPolling; strBuilder.Port = myInfo.Port; baseConn = new FbConnection(strBuilder.ConnectionString); baseConn.Open(); CurDatabase = myInfo.DataFile; CurPwd = myInfo.Password; invalidator = new InvalidatorForFirebird(); } catch (Exception e) { throw e; } }
public sealed override void Open(string connectionString) { if (string.IsNullOrEmpty(connectionString)) { throw new Exception("Invalid connection string"); } try { if (IsOpened) { return; } baseConn = new FbConnection(connectionString); baseConn.Open(); invalidator = new InvalidatorForFirebird(); } catch (Exception e) { throw e; } }