using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Text; namespace Sai.Toolkit.Mvvm.Attributes { [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public class UndefinedCharAttribute : ValidationAttribute { public UndefinedCharAttribute(params char[] chars) { Chars = chars; } public char[] Chars { get; } protected override ValidationResult IsValid(object value, ValidationContext validationContext) { //char[] chars = new[] { '\\', ':', '{', '}', '[', ']', '|', ';', '<', '>', '?', '`', '~' }; if (value != null) { foreach (var c in Chars) { if (value.ToString().IndexOf(c) > -1) { return new ValidationResult($"输入字符不合法,名称不能包含字符:'\\ : [ ] | {{}}; < > ? ` ~"); } } } return ValidationResult.Success; } } }