Models.Class IRepository.CreateClass(Models.Class model) { var parameters = new[] { new SqlParameter("@TeacherId", model.TeacherId), new SqlParameter("@ClassName", model.ClassName), new SqlParameter("@Active", true) //New is always active }; using (var db = new Db(ConnectionString)) { model.Id = db.CallProcWithReturnValue(StoredProcedures.CreateTeacherClass, parameters); } return(model); }
void IRepository.UpdateClass(Models.Class model) { var parameters = new[] { new SqlParameter("@Id", model.Id), new SqlParameter("@TeacherId", model.TeacherId), new SqlParameter("@ClassName", model.ClassName), new SqlParameter("@Active", model.Active) }; using (var db = new Db(ConnectionString)) { db.CallProc(StoredProcedures.UpdateTeacherClass, parameters); } }
Models.Class IRepository.GetClass(int id) { var result = new Models.Class(); var parameters = new[] { new SqlParameter("@Id", id) }; using (var db = new Db(ConnectionString)) { db.UseDataReader(StoredProcedures.GetTeacherClass, parameters, reader => { while (reader.Read()) { result.Id = reader.GetInt("Id"); result.Active = reader.GetBool("Active"); result.ClassName = reader.GetString("ClassName"); result.TeacherId = reader.GetInt("TeacherId"); } }); } return(result); }
List <Models.Class> IRepository.GetTeachersClasses(int teacherId) { var result = new List <Models.Class>(); var parameters = new[] { new SqlParameter("@TeacherId", teacherId) }; using (var db = new Db(ConnectionString)) { db.UseDataReader(StoredProcedures.GetTeacherClasses, parameters, reader => { while (reader.Read()) { var model = new Models.Class(); model.Id = reader.GetInt("Id"); model.Active = reader.GetBool("Active"); model.ClassName = reader.GetString("ClassName"); model.TeacherId = reader.GetInt("TeacherId"); result.Add(model); } }); return(result); } }