using System; using System.Collections.Generic; using System.Text; namespace WIDESEA_Core.ObjectActionValidator { /// <summary> /// æ™®é€šå‚æ•°é…ç½® /// </summary> public class GeneralOptions { /// <summary> /// è‡ªå®šä¹‰éªŒè¯ /// </summary> /// <param name="generalName"></param> /// <param name="customValidator"></param> public GeneralOptions(ValidatorGeneral generalName, string CNName, Func<object, ObjectValidatorResult> customValidator) { this.CNName = CNName; this.CustomValidator = customValidator; this.Name = generalName.ToString().ToLower(); } /// <summary> /// /// </summary> /// <param name="generalName">æ™®é€šå‚æ•°çš„åå—ï¼Œä¸Žæ–¹æ³•å‚æ•°åå—必须一致(ä¸åˆ†å¤§å°å†™ï¼‰,å¯ä»¥ç›´æŽ¥åœ¨ValidatorGeneralä¸Šæ·»åŠ </param> public GeneralOptions(ValidatorGeneral generalName, string CNName) { this.Name = generalName.ToString().ToLower(); this.CNName = CNName; this.ParamType = ParamType.String; } public GeneralOptions(ValidatorGeneral generalName, string CNName, ParamType type) { this.Name = generalName.ToString().ToLower(); this.CNName = CNName; this.ParamType = ParamType.String; } public GeneralOptions(ValidatorGeneral generalName, string CNName, int? min, int? max) { this.Name = generalName.ToString().ToLower(); this.CNName = CNName; this.ParamType = ParamType.String; this.Min = min; this.Max = max; } public GeneralOptions(ValidatorGeneral generalName, string CNName, ParamType type, int? min, int? max) { this.Name = generalName.ToString().ToLower(); this.CNName = CNName; this.ParamType = type; this.Min = min; this.Max = max; } public Func<object, ObjectValidatorResult> CustomValidator; /// <summary> /// æ–¹æ³•ä¸Šçš„å‚æ•°åå— /// </summary> public string Name { get; set; } /// <summary> /// 䏿–‡åå—,傿•°æ ¡éªŒé”™è¯¯çš„æç¤ºæ–‡å— /// </summary> public string CNName { get; set; } /// <summary> /// 傿•°ç±»åž‹ï¼Œç›®å‰åªåˆ—å‡ºäº†è¿™å‡ ç§,ä¸å¤Ÿè‡ªå·±å†åŠ /// </summary> public ParamType ParamType { get; set; } /// <summary> /// æ•°å—为最å°å€¼,å—符串为最å°é•¿åº¦ /// </summary> public int? Min { get; set; } /// <summary> /// æ•°å—为最大值,å—符串为最大长度 /// </summary> public int? Max { get; set; } } public enum ParamType { Int, //Long, //Byte, Bool, String, DateTime, Decimal, Guid } }