AppendixValidatorFactory.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using FluentValidation;
  2. using GreenTree.Nachtragsmanagement.Web.Models.Admin.User;
  3. using GreenTree.Nachtragsmanagement.Web.Models.Appendix;
  4. using GreenTree.Nachtragsmanagement.Web.Models.Deviation;
  5. using GreenTree.Nachtragsmanagement.Web.Models.Misc;
  6. using GreenTree.Nachtragsmanagement.Web.Models.Site;
  7. using GreenTree.Nachtragsmanagement.Web.Validation.Admin.User;
  8. using GreenTree.Nachtragsmanagement.Web.Validation.Appendix;
  9. using GreenTree.Nachtragsmanagement.Web.Validation.Deviation;
  10. using GreenTree.Nachtragsmanagement.Web.Validation.Misc;
  11. using GreenTree.Nachtragsmanagement.Web.Validation.Site;
  12. using System;
  13. using System.Collections.Generic;
  14. using System.Linq;
  15. using System.Web;
  16. namespace GreenTree.Nachtragsmanagement.Web.Validation
  17. {
  18. public class AppendixValidatorFactory : ValidatorFactoryBase
  19. {
  20. private static Dictionary<Type, IValidator> validators = new Dictionary<Type, IValidator>();
  21. static AppendixValidatorFactory()
  22. {
  23. validators.Add(typeof(IValidator<UserDataModel>), new UserDataModelValidator());
  24. validators.Add(typeof(IValidator<RoleDataModel>), new RoleDataModelValidator());
  25. validators.Add(typeof(IValidator<DeviationDataModel>), new DeviationDataModelValidator());
  26. validators.Add(typeof(IValidator<StatusDataModel>), new StatusDataModelValidator());
  27. validators.Add(typeof(IValidator<DisturbanceDataModel>), new DisturbanceDataModelValidator());
  28. validators.Add(typeof(IValidator<KindDataModel>), new KindDataModelValidator());
  29. validators.Add(typeof(IValidator<AppendixDataModel>), new AppendixDataModelValidator());
  30. validators.Add(typeof(IValidator<InvoiceDataModel>), new InvoiceDataModelValidator());
  31. validators.Add(typeof(IValidator<StateDataModel>), new StateDataModelValidator());
  32. validators.Add(typeof(IValidator<CategoryDataModel>), new CategoryDataModelValidator());
  33. validators.Add(typeof(IValidator<SiteDataModel>), new SiteDataModelValidator());
  34. validators.Add(typeof(IValidator<MailNotificationDataModel>), new MailNotificationDataModelValidator());
  35. }
  36. public override IValidator CreateInstance(Type validatorType)
  37. {
  38. IValidator validator;
  39. if (validators.TryGetValue(validatorType, out validator))
  40. {
  41. return validator;
  42. }
  43. return validator;
  44. }
  45. }
  46. }