当前位置: 首页>>代码示例>>C#>>正文


C# ModelStateDictionary.Clear方法代码示例

本文整理汇总了C#中ModelStateDictionary.Clear方法的典型用法代码示例。如果您正苦于以下问题:C# ModelStateDictionary.Clear方法的具体用法?C# ModelStateDictionary.Clear怎么用?C# ModelStateDictionary.Clear使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ModelStateDictionary的用法示例。


在下文中一共展示了ModelStateDictionary.Clear方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: StartRegistrationForFamilyMember

        public void StartRegistrationForFamilyMember(int id, ModelStateDictionary modelState)
        {
            modelState.Clear(); // ensure we pull form fields from our model, not MVC's
            HistoryAdd("Register");
            int index = List.Count - 1;
            var p = LoadExistingPerson(id, index);

            if(p.NeedsToChooseClass())
                return;

            p.ValidateModelForFind(modelState, id, selectFromFamily: true);
            if (!modelState.IsValid)
                return;

            List[index] = p;

            if (p.ManageSubscriptions() && p.Found == true)
                return;

            if (p.org != null && p.Found == true)
            {
                if (!SupportMissionTrip)
                    p.IsFilled = p.org.RegLimitCount(DbUtil.Db) >= p.org.Limit;
                if (p.IsFilled)
                    modelState.AddModelError(this.GetNameFor(mm => mm.List[List.IndexOf(p)].Found),
                        "Sorry, but registration is filled.");
                if (p.Found == true)
                    p.FillPriorInfo();
                return;
            }
            if (p.org == null && p.ComputesOrganizationByAge())
                modelState.AddModelError(this.GetNameFor(mm => mm.List[id].Found), p.NoAppropriateOrgError);
        }
开发者ID:craigsaboe,项目名称:bvcms,代码行数:33,代码来源:FamilyMembers.cs

示例2: ClearAllError

 /// <summary>
 /// 清除全部Error,实际上可以用 modelState.Clear();加在这里只是保持完整性罢了
 /// </summary>
 /// <param name="modelState"></param>
 public static void ClearAllError(ModelStateDictionary modelState)
 {
     modelState.Clear();
     //foreach (var key in modelState.Keys)
     //{
     //    ClearError(modelState, key);
     //}
 }
开发者ID:reckcn,项目名称:DevLib.Comm,代码行数:12,代码来源:ModelStateHandler.cs

示例3: ToModelErrors

 public static void ToModelErrors(this ValidationResult validationResult, ModelStateDictionary modelState)
 {
     modelState.Clear();
     foreach (var validationError in validationResult.Errors)
     {
         modelState.AddModelError(validationError.Property, validationError.Message);
     }
 }
开发者ID:lAnubisl,项目名称:WebApplicationsDevelopmentLessons,代码行数:8,代码来源:ModelErrorExtension.cs

示例4: modelStateIsValidAfterReRunValidationOnComplexAttributes

 public bool modelStateIsValidAfterReRunValidationOnComplexAttributes(
     ModelStateDictionary modelState, IValidatableObject model)
 {
     modelState.Clear();
     var errors = model.Validate(new ValidationContext(model, null, null));
     foreach(var error in errors)
         foreach(var memberName in error.MemberNames)
             modelState.AddModelError(memberName, error.ErrorMessage);
     return modelState.IsValid;
 }
开发者ID:simenflatby,项目名称:HiOA-Webapplikasjoner-Individuell,代码行数:10,代码来源:ValidationHelper.cs

示例5: SetPerson

        private Person SetPerson(PersonEditModel personEditModel, SeminarPerson seminarPerson, ModelStateDictionary modelState, Person person = null, HttpPostedFileBase profilePic = null)
        {
            modelState.Clear();

            person = person ?? personEditModel.Person;

            // copy all the fields
            Mapper.Map(personEditModel, person);

            SetAddresses(person, personEditModel.Addresses, ModelState);
            SetContacts(person, personEditModel.Contacts, ModelState);

            if (seminarPerson != null)
            {
                SetCommodities(seminarPerson, personEditModel.Commodities);

                if (personEditModel.Firm != null || !string.IsNullOrEmpty(personEditModel.FirmName))
                {
                    seminarPerson.Firm = personEditModel.Firm ?? new Firm(personEditModel.FirmName, personEditModel.FirmDescription) { WebAddress = personEditModel.FirmWebAddress };
                }
                if (personEditModel.Title != null) //Not sure what is happening here. This may fix it.
                {
                    seminarPerson.Title = personEditModel.Title;
                }
            }

            // deal with the image))
            if (profilePic != null)
            {
                // blank out existing image files
                person.OriginalPicture = null;
                person.MainProfilePicture = null;
                person.ThumbnailPicture = null;

                // read the file and set the original picture
                var reader = new BinaryReader(profilePic.InputStream);
                person.OriginalPicture = reader.ReadBytes(profilePic.ContentLength);
                person.ContentType = profilePic.ContentType;
            }

            // run the validation
            person.TransferValidationMessagesTo(modelState);

            return person;
        }
开发者ID:ucdavis,项目名称:Agribusiness,代码行数:45,代码来源:PersonController.cs

示例6: Validate

        //метод валидации
        public void Validate(ModelStateDictionary state)
        {
            state.Clear();

            //планируемое количество замен
            //должно быть в интервале 0 - общее количество контроллеров автоматики
            DBRepository dataRepo = new DBRepository();
            int contrAmm = dataRepo.ETKAutomControllers.Count();
            int replLvl;
            try
            {
                if (ReplacementLevel != null) //если null, то значит пользователь ничего не ввел в поле (допустимо)
                {
                    replLvl = Int32.Parse(ReplacementLevel); //если ввели не число, то не распарсит
                    if (replLvl < 0)
                    {
                        state.AddModelError("DateError", "Пожалуйста введите достоверный уровень замен контролеров в год!");
                    }
                }
            }
            catch
            {
                //нераспарсил
                state.AddModelError("DateError", "Пожалуйста введите достоверный уровень замен контролеров в год!");
            }

            //валидация выбранных факторов
            //если пользователь выбрал учитывать модификацию, то также должна быть выбрана модель
            if(ModificationFact&&!ModelFact)
                state.AddModelError("DateError", "При выборе \"Учитывать модификацию...\" обязательно должно быть выбрано \"Учитывать модель\"!");

            //валидация типа оборудования: пропускаем только контроллеры, при добавлении возможности обработки новых видов оборудования необходимо внести изменения
            if (EquType!="controllers")
                state.AddModelError("EquTypeError", "Метод для выбранного типа оборудования в настоящее время не реализован!");
        }
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:36,代码来源:Report_1_VM.cs

示例7: ValidateEditCRepOrderStatus_VM

        void ValidateEditCRepOrderStatus_VM(EditCRepOrderStatus_VM model, ModelStateDictionary state)
        {
            state.Clear();
            DateTime tempDate;
            float tempFloat;
            string tempString;
            //валидация проходит отдельно для каждого варианта нового статуса
            //1.sended
            if (model.NewStatus=="sended")
            {
                //дата отправки
                //должна быть введена, должна иметь правильный формат, должна быть в интервале дата обнаружения -- текущая дата
                try
                {
                    if (model.SendedDate != null)
                    {
                        tempDate = DateTime.Parse(model.SendedDate); //если ввели некоректные данные, то не распарсит
                        if (tempDate > DateTime.Now)
                        {
                            state.AddModelError("", "Дата направления заявки позже текущей даты!");
                        }
                        else if (tempDate < model.Order.CRO_revealedDate)
                        {
                            //state.AddModelError("", "Заявка не может быть направлена раньше обнаружения неисправности!");
                        }
                    }
                    else
                    {
                        state.AddModelError("", "Пожалуйста введите дату направления заявки!");
                    }
                }
                catch
                {
                    //нераспарсил
                    state.AddModelError("DateError", "Пожалуйста введить дату направления заявки в формате ДД.ММ.ГГГГ");
                }
                //номер заявки - должен быть присвоен, должен быть не более 10 символов
                if (model.No== null)
                    state.AddModelError("NoError", "Пожалуйста укажите номер, присвоенный заявке!");
                else if (model.No.Length>10)
                    state.AddModelError("NoError", "Ошибка: номер заявки должен быть в пределах 10 символов");

            } //sended

            //2. billed
            if (model.NewStatus == "billed")
            {
                //дата предъявления
                //должна быть введена, должна иметь правильный формат, должна быть в интервале дата восстановления -- текущая дата
                //перед приемкой к оплате работ заявка должна быть закрыта
                try
                {
                    if (model.BilledDate != null)
                    {
                        tempDate = DateTime.Parse(model.BilledDate); //если ввели некоректные данные, то не распарсит
                        if (tempDate > DateTime.Now)
                        {
                            state.AddModelError("", "Дата предъявления работ к оплате позже текущей даты!");
                        }

                        if(model.Order.CRO_closedDate==null)
                        {
                            state.AddModelError("", "Ошибка: попытка внесения информации об оплате заявки, которая не закрыта!");
                        }
                        else if (tempDate < model.Order.CRO_closedDate)
                        {
                            state.AddModelError("", "Ошибка. Дата предъявления работ к оплате раньше даты закрытия заявки!");
                        }
                    }
                    else
                    {
                        state.AddModelError("", "Пожалуйста введите дату предъявления работ к оплате!");
                    }
                }
                catch
                {
                    //нераспарсил
                    state.AddModelError("DateError", "Пожалуйста введить дату предъявления работ к оплате в формате ДД.ММ.ГГГГ");
                }

                //подрядная организация
                //должна быть выбрана
                if(model.Contractor==null)
                {
                    state.AddModelError("", "Пожалуйста выберите подрядную организацию!");
                }

                //стоимость ремонта
                // должна быть введена, должна быть в интервале 150 - 150 000,00
                if (model.RepairCost!=null)
                {
                    //на
                    tempString = model.RepairCost.Replace('.', ',');//для того, чтобы пользователь имел возможность вводить и через точку и через запятую
                    try
                    {
                        tempFloat = float.Parse(tempString);
                        //распарсил, продолжаем
                        if (tempFloat<150.00 || tempFloat>150000.00)
                        {
                            state.AddModelError("", "Ошибка: введена недостоверная сумма!");
//.........这里部分代码省略.........
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:101,代码来源:RepairController.cs

示例8: ValidateCreporderList_VM

 void ValidateCreporderList_VM(CreporderList_VM model, ModelStateDictionary state)
 {
     state.Clear();
     //введенные даты, должны иметь правильный формат
     DateTime Date;
     try
     {
         if (model.StartRevDate!=null)Date = DateTime.Parse(model.StartRevDate);
         if (model.FinishRevDate!=null)Date = DateTime.Parse(model.FinishRevDate);
     }
     catch
     {
         state.AddModelError("", "Даты необходимо ввести в формате ДД.ММ.ГГГГ");
     }
 }
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:15,代码来源:RepairController.cs

示例9: ValidateCreporderDetails_VM

        void ValidateCreporderDetails_VM(CreporderDetails_VM model, ModelStateDictionary state)
        {
            state.Clear();

            //дата обнаружения неисправности
            //должна быть введена, должна иметь правильный формат, не должна быть позже текущей даты, не должна быть раньше 2-х лет
            DateTime tempDate;
            try
            {
                if (model.RevealedDate != null)
                {
                    tempDate = DateTime.Parse(model.RevealedDate); //если ввели некоректные данные, то не распарсит
                    if (tempDate>DateTime.Now)
                    {
                        state.AddModelError("", "Дата обнаружения неисправности позже текущей даты!");
                    }
                    else if(tempDate<DateTime.Now.AddYears(-2))
                    {
                        state.AddModelError("", "Неисправность не должна быть обнаружена более 2-х лет назад!");
                    }
                }
                else
                {
                    state.AddModelError("", "Пожалуйста введите дату обнаружения неисправности!");
                }
            }
            catch
            {
                //нераспарсил
                state.AddModelError("DateError", "Пожалуйста введить дату обнаружения неисправности в формате ДД.ММ.ГГГГ");
            }

            //описание неисправности: обязательно, не более 1000 символов
            if (model.ReporderDescription==null)
            {
                state.AddModelError("", "Пожалуйста введите описание неисправности!");
            }
            else if (model.ReporderDescription.Length>1000)
            {
                state.AddModelError("", "Описание неисправности слишком длинное!");
            }

            //адрес местонахождения: проверяем только если пользователь снял галку "установлен на тепловом пункте"
            //обязательно должен быть введен, должен быть не более 300 символов
            if(!model.Mounted)
            {
                if (model.EquipLocation==null)
                {
                    state.AddModelError("", "Пожалуйста укажите адрес местонахождения (или выберите 'находится в ТП')!");
                }
                else if(model.EquipLocation.Length>300)
                {
                    state.AddModelError("", "Адрес установки слишком длинный!");
                }
            }

            //срок выполнения работ, если введен, то должен быть не более 200 символов
            if(model.ExpectedRepairTerm!=null && model.ExpectedRepairTerm.Length>200)
            {
                state.AddModelError("", "Срок выполнения работ слишком длинный!");
            }

            //контакт: должен быть отмечен по крайней мере 1 контакт и не более 5;
            int count = 0;
            if(model.ContactsChoice!=null)
            {
                foreach (var contact in model.ContactsChoice)
                {
                    if (contact.Checked == true) count++;
                }
            }

            if (count==0)
            {
                state.AddModelError("", "Пожалуйста выберите контактных лиц!");
            }
            else if (count>5)
            {
                state.AddModelError("", "Пожалуйста выберите не более 5 контактных лиц!");
            }
        }
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:81,代码来源:RepairController.cs

示例10: ValidateCreateCRepOrder_Equipment_VM

        void ValidateCreateCRepOrder_Equipment_VM(CreateCRepOrder_Equipment_VM model,ModelStateDictionary state)
        {
            state.Clear();
            //контроллер должен быть выбран
            if (model.CID==null)
            {
                state.AddModelError("", "Пожалуйста выберите контроллер");
            }
            else
            {
                //выбранный контроллер не должен находится в ремонте
                HSA.Domain.BD.Controller controller = dataRepository.Controllers.SingleOrDefault(c => c.C_ID == model.CID);
                if(controller.IsBroken())
                {
                    state.AddModelError("", "Пожалуйста выберите контроллер, который не находится в ремонте");
                }

            }
        }
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:19,代码来源:RepairController.cs

示例11: ValidateControllerCorrect_VM

        //методы добавляют к ModelStateDictionary ошибки валидации для различных моделей
        void ValidateControllerCorrect_VM(ControllerCorrect_VM model, ModelStateDictionary state)
        {
            state.Clear();
            //должен быть введен заводской номер
            if (model.SerNo == null) state.AddModelError("1", "Пожалуйста введите заводской номер!");
            //должен быть введен инвентарный номер
            if (model.InvNo == null) state.AddModelError("2", "Пожалуйста введите инвентарный номер!");
            //проверяем длину инвентарного номера и заводского номера - должны быть меньше 30 символов
            if ((model.InvNo != null && model.InvNo.Length > 30) || (model.SerNo != null && model.SerNo.Length > 30))
            {
                state.AddModelError("DateError", "Ошибка: слишком длинный номер!");
            }
            //проверяем введенный пользователем год
            int intYear = 0;
            try
            {
                if (model.ProdYear != null) //если null, то значит пользователь ничего не ввел в поле (допустимо)
                {
                    intYear = Int32.Parse(model.ProdYear); //если ввели совсем уж хуйню, то не распарсит
                    if (intYear != 0 && !(intYear > 1980 && intYear <= DateTime.Now.Year)) //год должен быть в интервале 1980 - текущий год, если год = 0 то пользователь его не указал просто
                    {
                        state.AddModelError("DateError", "Введен недействительный год производства!");
                    }
                }
                else
                {
                    state.AddModelError("DateError", "Пожалуйста введите год производства!");
                }
            }
            catch
            {
                //нераспарсил
                state.AddModelError("DateError", "Введен недействительный год производства!");
            }

            //Предварительная проверка, что контроллер где то установлен
            if (!dataRepository.Asystems.Where(aS => aS.AS_Controller == model.CID).Any())
            {
                //контроллер нигде не установлен
                state.AddModelError("MountError", "Контроллер не установлен ни на одном объекте!");
            }

            //Примечание должно быть менее 1000 символов
            else if (model.Comment!=null&&model.Comment.Length > 1000)
            {
                state.AddModelError("", "Ошибка: примечание слишком длинное!");
            }
        }
开发者ID:nviktor,项目名称:HSA_Maintanance,代码行数:49,代码来源:RepairController.cs

示例12: Clear_RemovesAllEntries_IfDictionaryIsEmpty

        public void Clear_RemovesAllEntries_IfDictionaryIsEmpty()
        {
            // Arrange
            var dictionary = new ModelStateDictionary();

            // Act
            dictionary.Clear();

            // Assert
            Assert.Equal(0, dictionary.Count);
            Assert.Equal(0, dictionary.ErrorCount);
            Assert.Empty(dictionary);
            Assert.Equal(ModelValidationState.Valid, dictionary.ValidationState);
        }
开发者ID:ymd1223,项目名称:Mvc,代码行数:14,代码来源:ModelStateDictionaryTest.cs

示例13: Clear_RemovesAllEntries

        public void Clear_RemovesAllEntries()
        {
            // Arrange
            var dictionary = new ModelStateDictionary();
            dictionary.AddModelError("a", "a-error");
            dictionary.AddModelError("b", "b-error");
            dictionary.AddModelError("c", "c-error");

            // Act
            dictionary.Clear();

            // Assert
            Assert.Equal(0, dictionary.Count);
            Assert.Equal(0, dictionary.ErrorCount);
            Assert.Empty(dictionary);
            Assert.Equal(ModelValidationState.Valid, dictionary.ValidationState);
        }
开发者ID:ymd1223,项目名称:Mvc,代码行数:17,代码来源:ModelStateDictionaryTest.cs


注:本文中的ModelStateDictionary.Clear方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。