/// <summary> /// Install initial fixtures. Does not create duplicates, only installs missing ones. /// Use this method to install all fixtures, or other methods to install individual. /// </summary> public void InstallFixtures() { using (var context = new TeachersModelContainer()) { InstallFacultyFixtures(context); InstallDepartmentFixtures(context); InstallStudyActionFixtures(context); context.SaveChanges(); } }
public XLSLoader(string fileName, string sheetName = "бакалавр", TeachersModelContainer context = null) { if (context == null) { _context = new ModelContext(); } else { _context = context; } _excel = new ExcelQueryFactory(fileName); SheetName = sheetName; _rawData = (from c in _excel.WorksheetNoHeader(SheetName) select c).ToList(); _moduleOffsets = new Dictionary <Module, List <int> >(); _groupOffsets = new Dictionary <Group, int>(); }
/// <summary> /// Install fixtures for FacultySet. Does not save changes to context. /// </summary> /// <param name="context">DbContext instance.</param> public static void InstallFacultyFixtures(TeachersModelContainer context) { List <Faculty> _toSave = new List <Faculty>(); foreach (var fixture in _facultyFixtures) { var faculty = (from f in context.FacultySet where f.Name.Equals(fixture, StringComparison.InvariantCultureIgnoreCase) select f).FirstOrDefault(); if (faculty == null) { faculty = new Faculty(); faculty.Name = fixture; _toSave.Add(faculty); } } foreach (var item in _toSave) { context.FacultySet.Add(item); } }
/// <summary> /// Install fixtures for StudyActionSet. Does not save changes to context. /// </summary> /// <param name="context">DbContext instance.</param> public static void InstallStudyActionFixtures(TeachersModelContainer context) { List <StudyAction> _toSave = new List <StudyAction>(); foreach (var kvPair in _studyActionFixtures) { var studyAction = (from s in context.StudyActionSet where (s.Name.Equals(kvPair.Key, StringComparison.InvariantCultureIgnoreCase) && s.IsIndividual == kvPair.Value) select s).FirstOrDefault(); if (studyAction == null) { studyAction = new StudyAction(); studyAction.Name = kvPair.Key; studyAction.IsIndividual = kvPair.Value; _toSave.Add(studyAction); } } foreach (var item in _toSave) { context.StudyActionSet.Add(item); } }
/// <summary> /// Install fixtures for DepartmentSet. Does not save changes to context. /// </summary> /// <param name="context">DbContext instance.</param> public static void InstallDepartmentFixtures(TeachersModelContainer context) { Faculty defaultFaculty = context.FacultySet.FirstOrDefault(); List <Department> _toSave = new List <Department>(); foreach (var fixture in _departmentFixtures) { var department = (from f in context.DepartmentSet where f.Name.Equals(fixture, StringComparison.InvariantCultureIgnoreCase) select f).FirstOrDefault(); if (department == null) { department = new Department(); department.Name = fixture; department.Faculty = defaultFaculty; _toSave.Add(department); } } foreach (var item in _toSave) { context.DepartmentSet.Add(item); } }
public ModuleStudyActionImport(TeachersModelContainer context, RowNoHeader row) { this.context = context; this.row = row; }
public Fixtures(TeachersModelContainer context) { this.context = context; }
/// <summary> /// (Not implemented yet!) /// Install fixtures for StudyActionSet. Does not save changes to context. /// </summary> /// <param name="context">DbContext instance.</param> public static void InstallNormFixtures(TeachersModelContainer context) { throw new NotImplementedException(); }