public ActionResult Create(ActivityViewModel model) { if (string.IsNullOrEmpty(model.IdentityGUID)) { ModelState.AddModelError("IdentityGUID", "GUID пользователя должен быть заполнен"); } if (string.IsNullOrEmpty(model.CheckpointIP)) { ModelState.AddModelError("CheckpointIP", "IP должен быть заполнен"); } if (!model.Date.HasValue) { ModelState.AddModelError("Date", "Выберите дату"); } if (string.IsNullOrEmpty(model.Status)) { ModelState.AddModelError("Status", "Выберите статус"); } if (string.IsNullOrEmpty(model.Mode)) { ModelState.AddModelError("Mode", "Выберите режим"); } var user = identityService.GetAll().Where(x => x.GUID.Equals(model.IdentityGUID)).FirstOrDefault(); if (user == null) { ModelState.AddModelError("IdentityGUID", "Данного пользователя не существует"); } var checkpoint = checkpointService.GetAll().Where(x => x.IP.Equals(model.CheckpointIP)).FirstOrDefault(); if (checkpoint == null) { ModelState.AddModelError("CheckpointIP", "Данного датчика не существует"); } if (ModelState.IsValid) { bool status; if (model.Status.Equals("Успех")) { status = true; } else { status = false; } service.Create(new Activity { IdentityGUID = model.IdentityGUID, CheckpointIP = model.CheckpointIP, Date = (System.DateTime)model.Date, ModeID = modeService.GetByMode(model.Mode).FirstOrDefault().ID, Status = status }); return(RedirectToAction("Index", "Activity")); } else { model = new ActivityViewModel { StatusList = new SelectList(new List <StatusForList> { new StatusForList { Key = "Успех", Display = "Успех" }, new StatusForList { Key = "Неудача", Display = "Неудача" } }, "Key", "Display"), ModeList = new SelectList(new List <StatusForList> { new StatusForList { Key = "Вход", Display = "Вход" }, new StatusForList { Key = "Выход", Display = "Выход" } }, "Key", "Display") }; return(View(model)); } }