Я работаю над тем, чтобы FluentValidation работал с Castle Windsor. У меня уже есть обертка вокруг Виндзорского замка. Вот код для этого:
public class ResolveType
{
private static IWindsorContainer _windsorContainer;
public static void Initialize( IWindsorContainer windsorContainer )
{
_windsorContainer = windsorContainer;
}
public static T Of<T>()
{
return _windsorContainer.Resolve<T>();
}
}
Я пытаюсь построить фабрику FluentValidation, как описано в http://www.jeremyskinner.co.uk/2010/02/22/using-fluentvalidation-with-an-ioc-container
В статье используется StructureMap, но я подумал, что могу адаптировать его для Castle Windsor следующим образом:
public class CastleWindsorValidatorFactory : ValidatorFactoryBase
{
public override IValidator CreateInstance( Type validatorType)
{
return ResolveType.Of<validatorType>();
}
}
Обратите внимание, я просто пытаюсь вызвать свою оболочку, чтобы Виндзор мог разрешить ссылку на тип.
Проблема в том, что это не компилируется. Я получаю 'Не удалось найти тип или имя пространства имен' validatorType '(отсутствует директива using или ссылка на сборку?)
Как я могу сделать эту работу?