У меня есть два класса, которые наследуются от одного базового класса.
public class UserDetailValidator : BaseValidator<UserDetail>{
public UserDetailValidator(IRepository<Person, Guid> userRepository, AddressValidator addressValidator)
{
RuleFor(x => x.FirstName).Length(1, 10);
}
}
public class AddressValidator : BaseValidator<Address>
Когда я пытаюсь получить UserDetailValidator от WindsorServiceLocator, я получаю ошибку
Отсутствует зависимость.Компонент UserDetailValidator зависит от AddressValidator, который не может быть разрешен.Убедитесь, что зависимость правильно зарегистрирована в контейнере как служба или предоставлена как встроенный аргумент.В моем ValidationInstaller я использую следующее:
container.Register(
AllTypes.FromAssemblyNamed("Validation")
.IncludeNonPublicTypes()
.BasedOn(typeof(IValidator<>))
.WithService.AllInterfaces()
.LifestyleTransient()
Компонент IRepository внедряется без проблем.Это не только AddressValidator. Что я не делаю правильно?Я использую Castle Windsor 3.0