public ActionResult Edit(Course course) { //初始化项目名称列表 List <SelectListItem> projectList = new List <SelectListItem>(); //根据用户身份做判断 List <Project> pList = new List <Project>(); if (UserLogin.userroles.Contains("M")) { int userid = Convert.ToInt32(UserLogin.userid); var user = db.Users.Where(x => x.id == userid).FirstOrDefault(); var pros = from Projects in db.Projects where Projects.ManagerId == user.PersonId select Projects; pList = pros.Where(p => p.Status != "C").ToList(); } else { pList = db.Projects.Where(p => p.Status != "C").ToList(); } foreach (var item in pList) { SelectListItem listItem = new SelectListItem(); listItem.Text = item.ProjectName; listItem.Value = item.id.ToString(); projectList.Add(listItem); } ViewData["ProjectList"] = projectList; //初始化任课老师列表 List <SelectListItem> teacherList = new List <SelectListItem>(); foreach (var item in db.Managers.Where(p => p.ManagerType == "T")) { SelectListItem listItem = new SelectListItem(); listItem.Text = item.ManagerName; listItem.Value = item.id.ToString(); teacherList.Add(listItem); } ViewData["TeacherList"] = teacherList; try { if (ModelState.IsValid) { db.Entry(course).State = EntityState.Modified; var entry = db.Entry(course); //以下字段不更新 entry.Property(e => e.CreationDate).IsModified = false; entry.Property(e => e.CreatedBy).IsModified = false; entry.Property(e => e.Attribute1).IsModified = false; entry.Property(e => e.Attribute2).IsModified = false; entry.Property(e => e.Attribute3).IsModified = false; entry.Property(e => e.Attribute4).IsModified = false; entry.Property(e => e.Attribute5).IsModified = false; entry.Property(e => e.Attribute6).IsModified = false; entry.Property(e => e.Attribute7).IsModified = false; entry.Property(e => e.Attribute8).IsModified = false; entry.Property(e => e.Attribute9).IsModified = false; entry.Property(e => e.Attribute10).IsModified = false; //entry.Property(e => e.ProjectId).IsModified = false; course.LastUpdatedate = DateTime.Now; course.LastUpdatedBy = Convert.ToInt32(UserLogin.userid); //从系统获取 //Validate Projects before commit to Database CoursesBO courseBO = new CoursesBO(); string errorMsg = ""; errorMsg = courseBO.ValidateCourse(course); if (!String.IsNullOrEmpty(errorMsg)) { ViewBag.ErrorMsg = errorMsg; return(View(course)); } db.SaveChanges(); db.Configuration.ValidateOnSaveEnabled = true; return(RedirectToAction("CoursesList")); } } catch (Exception ex) { ViewBag.ErrorMsg = ex.Message; return(View(course)); } return(View(course)); }
public ActionResult Create(Course course) { //初始化任课老师列表 List <SelectListItem> teacherList = new List <SelectListItem>(); foreach (var item in db.Managers.Where(p => p.ManagerType == "T")) { SelectListItem listItem = new SelectListItem(); listItem.Text = item.ManagerName; listItem.Value = item.id.ToString(); teacherList.Add(listItem); } ViewData["TeacherList"] = teacherList; //初始化项目名称列表 List <SelectListItem> projectList = new List <SelectListItem>(); //根据用户身份做判断 List <Project> pList = new List <Project>(); if (UserLogin.userroles.Contains("M")) { int userid = Convert.ToInt32(UserLogin.userid); var user = db.Users.Where(x => x.id == userid).FirstOrDefault(); var pros = from Projects in db.Projects where Projects.ManagerId == user.PersonId select Projects; pList = pros.Where(p => p.Status != "C").ToList(); } else { pList = db.Projects.Where(p => p.Status != "C").ToList(); } foreach (var item in pList) { SelectListItem listItem = new SelectListItem(); listItem.Text = item.ProjectName; listItem.Value = item.id.ToString(); projectList.Add(listItem); } ViewData["ProjectList"] = projectList; CoursesBO courseBO = new CoursesBO(); try { course.CreatedBy = Convert.ToInt32(UserLogin.userid); //从系统获取 course.CreationDate = System.DateTime.Now; course.LastUpdatedate = System.DateTime.Now; course.LastUpdatedBy = Convert.ToInt32(UserLogin.userid); //从系统获取 db.Courses.Add(course); string msg = courseBO.ValidateCourse(course); if (!String.IsNullOrEmpty(msg)) { ViewBag.ErrorMsg = msg; return(View(course)); } db.SaveChanges(); return(RedirectToAction("CoursesList")); } catch (Exception ex) { ViewBag.ErrorMsg = ex.Message; return(View()); } }