AppendixValidatorFactory.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using FluentValidation;
  2. using GreenTree.Nachtragsmanagement.Web.Models.Admin.User;
  3. using GreenTree.Nachtragsmanagement.Web.Models.Deviation;
  4. using GreenTree.Nachtragsmanagement.Web.Validation.Admin.User;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Web;
  9. namespace GreenTree.Nachtragsmanagement.Web.Validation
  10. {
  11. public class AppendixValidatorFactory : ValidatorFactoryBase
  12. {
  13. private static Dictionary<Type, IValidator> validators = new Dictionary<Type, IValidator>();
  14. static AppendixValidatorFactory()
  15. {
  16. validators.Add(typeof(IValidator<UserDataModel>), new UserDataModelValidator());
  17. validators.Add(typeof(IValidator<RoleDataModel>), new RoleDataModelValidator());
  18. validators.Add(typeof(IValidator<DeviationDataModel>), new DeviationDataModelValidator());
  19. validators.Add(typeof(IValidator<StatusDataModel>), new StatusDataModelValidator());
  20. validators.Add(typeof(IValidator<DisturbanceDataModel>), new DisturbanceDataModelValidator());
  21. validators.Add(typeof(IValidator<KindDataModel>), new KindDataModelValidator());
  22. }
  23. public override IValidator CreateInstance(Type validatorType)
  24. {
  25. IValidator validator;
  26. if (validators.TryGetValue(validatorType, out validator))
  27. {
  28. return validator;
  29. }
  30. return validator;
  31. }
  32. }
  33. }