1
어떻게 structmap 및 유창 검증 유효성 검사 어셈블리 스캐너를 사용하여 유효성 검사기를 nhibernate 엔터티에 바인딩 할 수 있습니까? srFluent 유효성 검사 및 Structuremap AssemblyScanner 구현. ASP.NET MVC3
어떻게 structmap 및 유창 검증 유효성 검사 어셈블리 스캐너를 사용하여 유효성 검사기를 nhibernate 엔터티에 바인딩 할 수 있습니까? srFluent 유효성 검사 및 Structuremap AssemblyScanner 구현. ASP.NET MVC3
ObjectFactory.Configure(cfg => cfg.AddRegistry(new MyRegistry()));
ControllerBuilder.Current.SetControllerFactory(new StructureMapControllerFactory());
//Configure FV to use StructureMap
var factory = new StructureMapValidatorFactory();
//Tell MVC to use FV for validation
ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(factory));
DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
public class StructureMapValidatorFactory : ValidatorFactoryBase
{
public override IValidator CreateInstance(Type validatorType)
{
return ObjectFactory.TryGetInstance(validatorType) as IValidator;
}
}
public class MyRegistry : Registry
{
public MyRegistry()
{
AssemblyScanner.FindValidatorsInAssemblyContaining<LiveReport.Domain.Validation.PersonValidator>()
.ForEach(result =>
{
For(result.InterfaceType)
.Singleton()
.Use(result.ValidatorType);
});
}
}
싱글 톤을 지정할 때는주의해야합니다. 유효성 검사기가 데이터베이스를 호출하면 사용중인 연결이 그 동안 처리 될 수 있습니다. –
@ vartan-arabyan, 내 모든 뷰 모델 (내 프로젝트에서 100 개 이상) 개인을 등록해야합니까? 이런! 제발 안되니? –