CheevoService.Database.GetCheevos C# (CSharp) 메소드

GetCheevos() 공개 정적인 메소드

public static GetCheevos ( ) : IEnumerable
리턴 IEnumerable
        public static IEnumerable<Cheevo> GetCheevos()
        {
            List<Cheevo> cheevos = new List<Cheevo>();

            /*
            CREATE TABLE available_cheevos
            (
              ID int NOT NULL,
              Title varchar(255) NOT NULL,
              Description varchar(1024) NOT NULL,
              Category varchar(255) NOT NULL,
              Points int NOT NULL,
              CreatedTime datetime NOT NULL,
              PRIMARY KEY(Cheevo_Id)
            )
             */

            const string loadCheevos = "select Title,Description,Category,Points,ID from available_cheevos";
            bool dbOpened = false;

            lock (Database.sqliteCon)
            {
                try
                {
                    Database.sqliteCon.Open();
                    dbOpened = true;

                    using (SQLiteCommand selectCommand = new SQLiteCommand(loadCheevos, Database.sqliteCon))
                    using (SQLiteDataReader dataReader = selectCommand.ExecuteReader())
                    {
                        while (dataReader.HasRows && dataReader.Read())
                        {
                            cheevos.Add(new Cheevo(dataReader.GetString(0), dataReader.GetString(1), dataReader.GetString(2), dataReader.GetInt32(3), DateTime.MinValue, dataReader.GetInt32(4)));
                        }
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message + " " + ex.StackTrace);
                }
                finally
                {
                    if (dbOpened)
                    {
                        Database.sqliteCon.Close();
                    }
                }
            }
            return cheevos;
        }