public static Discipline getDisciplineById(int disciplineId) { Dictionary<string, object> result = querySingleSql("" + "SELECT " + "* " + "FROM " + "`" + tableName + "` " + "WHERE " + "`" + field_disciplineId + "` = " + disciplineId ); if (result == null) { return null; } Discipline discipline = new Discipline( Convert.ToInt32(result[field_disciplineId]), Convert.ToString(result[field_name]), MeasureProvider.getMeasureById(Convert.ToInt32(result[field_measureId])), CategoryProvider.getCategoryById(Convert.ToInt32(result[field_categoryId])) ); foreach (DisciplineSetDisciplineMapping disciplineSetDisciplineMapping in DisciplineSetDisciplineMappingProvider.getDisciplineSetDisciplineMappingsByDiscipline(discipline)) { discipline.addDisciplineSetDisciplineMapping(disciplineSetDisciplineMapping); } List<Variant> variants = VariantProvider.getVariantsByDiscipline(discipline); foreach (Variant variant in variants) { discipline.addVariant(variant); } return discipline; }