私は、Castle Windsor で FluentValidation を動作させることに取り組んでいます。私はすでにウィンザー城のラッパーを持っています。そのためのコードは次のとおりです。
public class ResolveType
{
private static IWindsorContainer _windsorContainer;
public static void Initialize( IWindsorContainer windsorContainer )
{
_windsorContainer = windsorContainer;
}
public static T Of<T>()
{
return _windsorContainer.Resolve<T>();
}
}
http://www.jeremyskinner.co.uk/2010/02/22/using-fluentvalidation-with-an-ioc-containerで説明されているように、FluentValidation ファクトリを構築しようとしています。
この記事では StructureMap を使用していますが、次のように Castle Windsor に適用できると考えました。
public class CastleWindsorValidatorFactory : ValidatorFactoryBase
{
public override IValidator CreateInstance( Type validatorType)
{
return ResolveType.Of<validatorType>();
}
}
Windsor が型参照を解決できるように、ラッパーを呼び出そうとしているだけです。
問題は、これがコンパイルされないことです。「型または名前空間名 'validatorType' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)」
どうすればこれを機能させることができますか?