Пример #1
0
        public static ISet <string> GetDatabases(DALInputParams inputParams)
        {
            DALInputParams.ThrowIfWrong(inputParams, false);

            inputParams.ConnectTimeout = CONNECT_TIMEOUT_3;

            using (var con = new SqlConnection(inputParams.ConnectionString))
                using (var cmd = con.CreateCommand())
                {
                    cmd.CommandType    = CommandType.Text;
                    cmd.CommandTimeout = COMMAND_TIMEOUT_5;
                    cmd.CommandText    = SQL_GET_DATABASES;

                    con.Open();

                    var databases = new SortedSet <string>(StringComparer.Ordinal);
                    using (var rd = cmd.ExecuteReader())
                    {
                        for (var idx = rd.GetOrdinal("DatabaseName"); rd.Read();)
                        {
                            databases.Add(rd.GetString(idx));
                        }
                    }
                    return(databases);
                }
        }
Пример #2
0
        public DatabaseCollection GetDatabases([FromUri] DALInputParams inputParams)
        {
            try
            {
                DALInputParams.ThrowIfWrong(inputParams);
#if USE_CACHE
                return(HttpContext.Current.Cache.Get(inputParams.ConnectionString + "-databases"
                                                     , () => new DatabaseCollection(DAL.GetDatabases(inputParams))));
#else
                return(new DatabaseCollection(DAL.GetDatabases(inputParams)));
#endif
            }
            catch (Exception ex)
            {
                return(new DatabaseCollection(ex));
            }
        }