2016-04-26 12 views
0

私はAutofacでこれを行う方法を知っていますが、Castleでは知りません。城ウィンザーは複数のタイプの基本インターフェースを登録しますか?

IAmBaseInterfaceを使用して実装AmClass(および他の実装)を登録したいと考えています。これは可能ですか? 私は以下を試しましたが、タイプを登録しませんでした。

container.Register(Classes.FromThisAssembly().BasedOn<IAmBaseInterface>() 
    .WithServiceAllInterfaces(); 

これもAutoFacに似ていますが、成功しませんでした。

container.Register(Classes.FromThisAssembly() 
    .Where(t => typeof(IAmBaseInterface).IsAssignableFrom(t)).WithService.AllInterfaces(); 
+0

私はあなたの最初の試みを試して、それは私のために働く。どうやって解決していますか? – lxalln

答えて

0

私は例のように私のコードではなくClasses.FromThisAssemblyで([]型...)Classes.Fromを使用していたことに気づきました。明らかに、複数のアセンブリをスキャンして実装の基盤を見つけることはありません。私はまた、内部実装を見つけるために複数のアセンブリをスキャンすることはしませんが、それは副次的なことです。

+0

明示的に指示すれば、両方のことを行うことができます。 –

関連する問題