public ActionResult DeleteConfirmed(int author, int id) { Disser dis = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию Review review = db.Review.Find(id, dis.Id, dis.AuthorPass); //и отзыв if (review == null) //не нашли? Ошибка { return(HttpNotFound()); } db.Review.Remove(review); //удаляем отзыв db.SaveChanges(); //сохраняем изменения return(RedirectToAction("Index", new { id = review.AuthorPass })); //к списку }
public ActionResult Edit(int?id) { if (id == null) //нет ид? { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); //ошибка! } Disser disser = db.Disser.Where(x => x.AuthorPass == id).SingleOrDefault(); //находим диссертацию if (disser == null) { return(HttpNotFound()); } return(View(disser)); //редактируем её }
public ActionResult Edit(int?author, int?id) { if (id == null || author == null || !db.Aspirant.Any(x => x.Pass == author)) //проверяем существование { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Disser dis = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию Review review = db.Review.Find(id, dis.Id, dis.AuthorPass); //находим отзыв if (review == null) //не нашли? Ошибка! { return(HttpNotFound()); } return(View(review)); }
public ActionResult Details(int?author, int?id) { if (id == null || author == null || !db.Aspirant.Any(x => x.Pass == author)) //проверяем существование { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Disser dis = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию Review review = db.Review.Find(id, dis.Id, dis.AuthorPass); //находим отзыв if (review == null) //не нашли? Ошибка! { return(HttpNotFound()); } ObjectParameter output = new ObjectParameter("result", typeof(string)); db.JoinNames("Aspirant", author, output); ViewBag.Name = (string)output.Value;//Своей процедурой передаем имя-фамилию return(View(review)); }
public ActionResult Index(int?id) { if (id == null) //нет ид? { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); //ошибка! } Disser disser = db.Disser.Where(x => x.AuthorPass == id).SingleOrDefault(); //находим диссертацию if (disser == null) //не нашли? { ViewBag.AuthorPass = id; return(View("Create")); //значит, создаем } ObjectParameter output = new ObjectParameter("result", typeof(string)); db.JoinNames("Aspirant", id, output); ViewBag.Name = (string)output.Value; //иначе забираем своей процедурой имя-фамилию return(View("Details", disser)); //И смотрим детали }
public ActionResult Create([Bind(Include = "Id,AuthorPass,Nomenclature,Readiness")] Disser disser) { if (ModelState.IsValid) //если все верно заполнено { Work work = new Work(); work.UDC = Request.Form["Work.UDC"]; //создаем и заполняем поля работы work.Name = Request.Form["Work.Name"]; work.AuthorPass = int.Parse(Request.Form["AuthorPass"]); work.Department = Request.Form["Work.Department"]; work.Theme = Request.Form["Work.Theme"]; work = db.Work.Add(work); //работу сливаем в БД db.SaveChanges(); disser.Id = work.Id; //ИД disser.AuthorPass = work.AuthorPass; //И пропуск автора как ключ в диссертацию db.Disser.Add(disser); //добавляем диссертацию db.SaveChanges(); //сливаем изменения return(RedirectToAction("Index", new { id = disser.AuthorPass })); //и к списку } return(View(disser)); }
// GET: Votings public ActionResult Index(int?author, int?id) { if (author == null || id == null) //проверяем на существование или ошибка { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Disser d = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию Defence def = db.Defence .Where(x => (x.DisserId == d.Id && (x.Number == id) && x.AuthorPass == author)) .SingleOrDefault(); //и защиту Voting voting = db.Voting .Where(x => x.DisserId == def.DisserId && x.AuthorPass == def.AuthorPass && x.DefenceId == def.Number) .SingleOrDefault(); //и голосование if (voting != null) { return(View("Details", voting)); //если уже есть голосование, то смотрим его } ViewBag.Defence = def; return(View("Create"));//иначе создаем новое }
public ActionResult Edit([Bind(Include = "Id,AuthorPass,Nomenclature,Readiness")] Disser disser) { if (ModelState.IsValid) //Если все верно внесли { disser = db.Disser.Where(x => x.AuthorPass == disser.AuthorPass).SingleOrDefault(); var t = disser.Work; //находим релевантную работу t.Name = Request.Form["Work.Name"]; t.Theme = Request.Form["Work.Theme"]; //заполняем работу t.UDC = Request.Form["Work.UDC"]; t.Department = Request.Form["Work.Department"]; disser.Nomenclature = Request.Form["Nomenclature"]; disser.Readiness = Int32.Parse(Request.Form["Readiness"]); disser.Id = t.Id; disser.Work = disser.Work; db.Entry(t).State = EntityState.Modified; db.Entry(disser).State = EntityState.Modified; //выставляем состояние изменено db.SaveChanges(); //накатываем изменения return(RedirectToAction("Index", new { id = disser.AuthorPass })); //и к списку } return(View(disser)); //иначе все по-новой }