using FluentValidation; using GreenTree.Nachtragsmanagement.Web.Models.Admin.User; using GreenTree.Nachtragsmanagement.Web.Models.Deviation; using GreenTree.Nachtragsmanagement.Web.Models.Site; using GreenTree.Nachtragsmanagement.Web.Validation.Admin.User; using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace GreenTree.Nachtragsmanagement.Web.Validation { public class AppendixValidatorFactory : ValidatorFactoryBase { private static Dictionary validators = new Dictionary(); static AppendixValidatorFactory() { validators.Add(typeof(IValidator), new UserDataModelValidator()); validators.Add(typeof(IValidator), new RoleDataModelValidator()); validators.Add(typeof(IValidator), new DeviationDataModelValidator()); validators.Add(typeof(IValidator), new StatusDataModelValidator()); validators.Add(typeof(IValidator), new DisturbanceDataModelValidator()); validators.Add(typeof(IValidator), new KindDataModelValidator()); validators.Add(typeof(IValidator), new SiteDataModelValidator()); } public override IValidator CreateInstance(Type validatorType) { IValidator validator; if (validators.TryGetValue(validatorType, out validator)) { return validator; } return validator; } } }