public static long CreateUpdateSubjectTypes(SubjectTypesDTO subjectTypes) { try { using (var ctx = new DAL.tutorDBEntities()) { var dbSubjectType = ctx.SubjectTypes.FirstOrDefault(x => x.id == subjectTypes.id) ?? ctx.SubjectTypes.Add(new DAL.SubjectTypes()); if (ctx.SubjectTypes.Any(x => x.name == subjectTypes.name && x.id != dbSubjectType.id)) { throw new Exception($"Группа предметов: {subjectTypes.name} уже существует"); } dbSubjectType.name = subjectTypes.name; ctx.SaveChanges(); return(dbSubjectType.id); } } catch (Exception ex) { throw; //return -1; } }
public static SubjectTypesDTO GetSubjectType(long?id = null, string name = null) { if (!id.HasValue && string.IsNullOrEmpty(name)) { return(null); } try { using (var ctx = new DAL.tutorDBEntities()) { var dbSubjectType = ctx.SubjectTypes.FirstOrDefault(x => x.id == id || x.name == name); if (dbSubjectType != null) { var subjectType = new SubjectTypesDTO { id = dbSubjectType.id, name = dbSubjectType.name }; return(subjectType); } throw new Exception($"Уровень обучения: {name} не найден"); } } catch (Exception ex) { return(null); } }