public T GetDataAccessConnection <T>(string name) where T : IDataAccessConnection { var result = DataAccessConnections.FirstOrDefault(x => x.Name == name); if (result == null) { throw new Exception(string.Format("Connection with name [{0}] not found", name)); } return((T)result); }
/// <summary> /// Add DataAccessConnection for manage /// </summary> /// <param name="item">IDataAccessConnection</param> public void AddDataAccessConnection(IDataAccessConnection item) { if (DataAccessConnections.Contains(item)) { throw new Exception(string.Format("Instance of [{0}] already exists in DataAccessConnections", item.GetType())); } if (DataAccessConnections.FirstOrDefault(x => x.Name == item.Name) != null) { throw new Exception(string.Format("Connection with name [{0}] already exists in DataAccessConnections", item.Name)); } if (TransactionsCount != 0) { throw new Exception("Connection already has started transactions"); } DataAccessConnections.Add(item); }