Ejemplo n.º 1
0
        public void ValidateComment(Comment comment, out ValidationStateDictionary validationState)
        {
            validationState = new ValidationStateDictionary();

            validationState.Add(typeof(Comment), validator.Validate(comment));

            if (!(comment.Creator is User))
            {
                validationState.Add(typeof(UserBase), validator.Validate(comment.Creator));

                //some rules change for an anonymous user
                if (!string.IsNullOrEmpty(comment.Creator.HashedEmail) &&
                    validationState[typeof(UserBase)] != null &&
                    validationState[typeof(UserBase)].Errors.Where(v => v.Name != "Email").FirstOrDefault() == null)
                {
                    validationState.Remove(typeof(UserBase));
                }
            }
        }