Esempio n. 1
0
        /// <summary>
        /// Validate the model
        /// </summary>
        /// <param name="context">the validation context</param>
        /// <returns></returns>
        public IEnumerable <ValidationResult> Validate(ValidationContext context)
        {
            var localizedResourceServices = HostContainer.GetInstance <ILocalizedResourceServices>();

            if (_pageServices.IsTitleExisted(Id, Title))
            {
                yield return(new ValidationResult(localizedResourceServices.T("AdminModule:::Pages:::ValidationMessages:::ExistingTitle:::Title is existed."), new[] { "Title" }));
            }

            FriendlyUrl = string.IsNullOrWhiteSpace(FriendlyUrl) ? Title.ToUrlString() : FriendlyUrl.ToUrlString();
            if (_pageServices.IsFriendlyUrlExisted(Id, FriendlyUrl))
            {
                yield return(new ValidationResult(localizedResourceServices.T("AdminModule:::Pages:::ValidationMessages:::ExistingFriendlyUrl:::Friendly Url is existed."), new[] { "FriendlyUrl" }));
            }

            /*Can only choose 1 type of template*/
            if (PageTemplateId.HasValue && FileTemplateId.HasValue)
            {
                yield return(new ValidationResult(localizedResourceServices.T("AdminModule:::Pages:::ValidationMessages:::MultipleTemplate:::You can only choose 1 type of template."), new[] { "PageTemplateId", "FileTemplateId" }));
            }
        }