public IHttpActionResult PutStudentInClass(int id, StudentInClass studentInClass) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != studentInClass.Id) { return(BadRequest()); } db.Entry(studentInClass).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!StudentInClassExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IActionResult addStudent(Students model) { { using (var db = _context) { Student student = new Student { s_id = model.Id, s_name = model.Name, s_address = model.Address }; StudentInClass sincl = new StudentInClass { c_name = model.Class, s_id = model.Id, roll = model.Roll }; //how to add a record db.StudentInClass.Add(sincl); db.Student.Add(student); db.SaveChanges(); } return(RedirectToAction("List", "Student")); } }
public IHttpActionResult PostStudentInClass(StudentInClass studentInClass) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.StudentsInClasses.Add(studentInClass); studentInClass.Relevance = true; //Делаем отметку, что ученик сейчас учится в этом классе studentInClass.StartDate = DateTime.Now; //Записываем дату начала обучения //+ Автоматически должна ставиться планруемая дата окончания обучения в данном классе //(не знаю, сейчас оставляют на второй год или нет) //Проставляем теоретическую дату окончания обучения в текущем классе studentInClass.EndingDate = new DateTime(studentInClass.StartDate.Year, 5, 31); //Учение может одновременно учиться только в одном классе, следовательно должен быть только один true, а остальные false foreach (StudentInClass s1 in db.StudentsInClasses.Where(e => e.Relevance == true)) { s1.Relevance = false; } db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = studentInClass.Id }, studentInClass)); }
public IHttpActionResult GetStudentInClass(int id) { StudentInClass studentInClass = db.StudentsInClasses.Find(id); if (studentInClass == null) { return(NotFound()); } return(Ok(studentInClass)); }
public IHttpActionResult PostStudentInClass(StudentInClass studentInClass) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.StudentsInClasses.Add(studentInClass); studentInClass.relevance = true; studentInClass.StartDate = DateTime.Now; db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = studentInClass.Id }, studentInClass)); }
public IHttpActionResult DeleteStudentInClass(int id) { StudentInClass studentInClass = db.StudentsInClasses.Find(id); if (studentInClass == null) { return(NotFound()); } //db.StudentsInClasses.Remove(studentInClass); studentInClass.relevance = false; studentInClass.EndingDate = DateTime.Now; db.SaveChanges(); return(Ok(studentInClass)); }
public List <StudentInClass> getStudentByEmail(string email) { SqlConnection con = null; List <StudentInClass> list = new List <StudentInClass>(); try { con = connect("DBConnectionString"); // create a connection to the database using the connection String defined in the web config file String selectSTR = "select * from Student as s inner join [User] as u on u.[Email]=s.StudentEmail where StudentEmail='" + email + "'"; SqlCommand cmd = new SqlCommand(selectSTR, con); // get a reader SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection); // CommandBehavior.CloseConnection: the connection will be closed after reading has reached the end while (dr.Read()) { // Read till the end of the data into a row StudentInClass s = new StudentInClass(); list.Add(s); } } catch (Exception ex) { // write to log throw (ex); } finally { if (con != null) { con.Close(); } } return(list); }
public IHttpActionResult DeleteStudentInClass(int id) { StudentInClass studentInClass = db.StudentsInClasses.Find(id); if (studentInClass == null) { return(NotFound()); } //db.StudentsInClasses.Remove(studentInClass); studentInClass.Relevance = false; /*Скорее всего надо сделать проверку, чтобы хотя бы один из классов был true, * то есть ученик должен быть в одном классе. Но с другой стороны, он может окончить школу, * все 11 классов, может просто бросить школу, уйти в армию, * а потом вновь вернутся - много возможных вариантов*/ studentInClass.EndingDate = DateTime.Now; //Записываем реальную дату окончания обучения ученика в классе взамен теоретической db.SaveChanges(); return(Ok(studentInClass)); }
public int updatePtime([FromBody] Dictionary <string, string> info) { StudentInClass st = new StudentInClass(); return(st.updatePtime(info)); }
// GET api/<controller> //public List<StudentInClass> getStudents() //{ // StudentInClass s = new StudentInClass(); // return s.getStudents(); //} public List <StudentInClass> getStudentByEmail(string email) { StudentInClass s = new StudentInClass(); return(s.getStudentByEmail(email)); }