C# FluentValidation:如何从另一个程序集自动注册所有验证程序?
我正在为一个.Net核心项目使用“FluentValidation.AspNetCore”库(Version=“8.6.2”) 我想做的是在Startup.cs类中自动注册我的所有验证器,使用类似的东西(这就是我现在使用的):C# FluentValidation:如何从另一个程序集自动注册所有验证程序?,c#,.net-core,startup,registration,fluentvalidation,C#,.net Core,Startup,Registration,Fluentvalidation,我正在为一个.Net核心项目使用“FluentValidation.AspNetCore”库(Version=“8.6.2”) 我想做的是在Startup.cs类中自动注册我的所有验证器,使用类似的东西(这就是我现在使用的): services.AddControllers().AddFluentValidation(fv=>fv.RegisterValidatorsFromAssemblyContaining()); 但问题是,我的验证器将被移动到另一个程序集(客户机需要),所以我不能使用S
services.AddControllers().AddFluentValidation(fv=>fv.RegisterValidatorsFromAssemblyContaining());
但问题是,我的验证器将被移动到另一个程序集(客户机需要),所以我不能使用Startup作为注册的参考
有没有一种方法可以做到这一点,而不必逐个注册验证器
注册验证器有三种方法
Startup
替换为从另一个程序集中派生的AbstractValidator
的任何类,它将注册该程序集中的所有验证器
例如:
services.AddControllers().AddFluentValidation(fv => fv.RegisterValidatorsFromAssemblyContaining<AnotherValidationClass>());
services.AddControllers().AddFluentValidation(fv=>fv.RegisterValidatorsFromAssemblyContaining());
谢谢!我在作为参考实现的验证器上留下了一个。
services.AddControllers().AddFluentValidation(fv => fv.RegisterValidatorsFromAssemblyContaining<AnotherValidationClass>());