Files
ShrlAlgoToolkit/ShrlAlgoToolkit.RevitAddins/Common/Attributes/UndefinedCharAttribute.cs

32 lines
1.0 KiB
C#
Raw Normal View History

using System.ComponentModel.DataAnnotations;
2024-09-22 11:05:41 +08:00
2026-02-21 16:31:24 +08:00
namespace ShrlAlgoToolkit.RevitAddins.Common.Attributes
2024-09-22 11:05:41 +08:00
{
[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;
}
}
}