/// <summary> /// Get all categories. /// </summary> /// <returns>A list filled with all requested instances.</returns> public List <Category> GetAll() { string sql = string.Empty; Category category = null; List <Category> categories = new List <Category>(); try { Connect(); sql = @"SELECT " + CategoryDAO.SQL_FIELDS_SELECT + @" FROM " + CategoryDAO.SQL_TABLE + @" ORDER BY typename ASC"; using (SQLiteDataReader reader = ExecuteReader(sql)) { while (reader.Read()) { category = CategoryDAO.ReadEntityRecord(reader); if (category != null) { categories.Add(category); } } } return(categories); } catch (Exception ex) { Logger.LogError(this, ex); throw; } finally { Disconnect(); } }
/// <summary> /// Recupera una categoría de la colección. /// </summary> /// <param name="name">Nombre de la categoria.</param> /// <returns>Una instáncia de <see cref="RCCategory"/> si la encuentra o <c>null</c> en cualquier otro caso.</returns> public Category GetByName(string name) { string sql = string.Empty; Category category = null; try { // Asegura la conexión de datos Connect(); // Averigua si existe alguna coincidencia sql = @"SELECT " + CategoryDAO.SQL_FIELDS_SELECT + @" FROM " + CategoryDAO.SQL_TABLE + @" WHERE LCase(typename) = @typename"; SetParameter("typename", name); using (SQLiteDataReader reader = ExecuteReader(sql)) { if (reader.Read()) { return(CategoryDAO.ReadEntityRecord(reader)); } } return(category); } catch (Exception ex) { Logger.LogError(this, ex); return(null); } finally { Disconnect(); } }
/// <summary> /// Recupera una categoría de la colección. /// </summary> /// <param name="itemid">Identificador de la categoria.</param> /// <returns>Una instáncia de <see cref="RCCategory"/> o <c>null</c> en cualquier otro caso.</returns> public Category GetByID(int categoryId) { string sql = string.Empty; try { Connect(); sql = @"SELECT " + CategoryDAO.SQL_FIELDS_SELECT + @" FROM " + CategoryDAO.SQL_TABLE + @" WHERE typeid = @typeid"; SetParameter("typeid", categoryId); using (SQLiteDataReader reader = ExecuteReader(sql)) { if (reader.Read()) { return(CategoryDAO.ReadEntityRecord(reader)); } } return(null); } catch (Exception ex) { Logger.LogError(this, ex); throw; } finally { Disconnect(); } }