public ActionResult EditCRepOrderNo(EditCRepOrderNo_VM model)
        {
            // валидация введенных пользователем данных
            ValidateEditCRepOrderNo_VM(model, ModelState);

            if (ModelState.IsValid)
            {
                //валидация успешна, внесем изменения в БД
                CRepOrder tempRepOrder = repairRepository.CRepOrders.SingleOrDefault(cro => cro.CRO_ID == model.ID);
                tempRepOrder.CRO_No = model.No;

                try
                {
                    repairRepository.SaveCRepOrder(tempRepOrder);
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", e.Message);
                }

            }

            if (ModelState.IsValid)
            {
                //все операции успешны: переходим на окно просмотра карточки заявки
                return Redirect(model.ReturnURL);
            }
            else
            {
                //есть ошибки валидации - выведем их пользователю
                //добавим в модель недостающие данные
                model.Order = repairRepository.CRepOrders.SingleOrDefault(cro => cro.CRO_ID == model.ID);
                return View(model);
            }
        }
 void ValidateEditCRepOrderNo_VM(EditCRepOrderNo_VM model, ModelStateDictionary state)
 {
     //номер заявки - должен быть присвоен, должен быть не более 10 символов
     if (model.No == null)
         state.AddModelError("NoError", "Пожалуйста укажите новый номер!");
     else if (model.No.Length > 10)
         state.AddModelError("NoError", "Ошибка: номер заявки должен быть в пределах 10 символов");
 }
        public ActionResult EditCRepOrderNo(int ID, string returnURL)
        {
            CRepOrder order = repairRepository.CRepOrders.SingleOrDefault(o => o.CRO_ID == ID);
            EditCRepOrderNo_VM model = new EditCRepOrderNo_VM
            {
                No = order.CRO_No,
                ID = ID,
                ReturnURL = returnURL,

                Order = order
            };
            return View(model);
        }