Castle Windsor では、重複する実装タイプを含む登録は許可されていません。タイプの転送が可能です。つまり、一度登録すれば、実装タイプを複数のサービス タイプにマッピングできます。
ASP.NET vNext の依存性注入ライブラリでは、複数のサービス タイプに対して同じ実装タイプを登録する必要があります。ただし、これらのサービス タイプには、ここに示すように異なるライフサイクルもあります。
public static IEnumerable<IServiceDescriptor> DefaultServices()
{
var describer = new ServiceDescriber();
yield return describer.Transient<IFakeService, FakeService>();
yield return describer.Scoped<IFakeScopedService, FakeService>();
yield return describer.Singleton<IFakeSingletonService, FakeService>();
yield return describer.Transient<IFakeFallbackService, FakeService>();
}
Forwardメソッドのシグネチャは次のとおりです。
public ComponentRegistration<TService> Forward(params Type[] types)
ご覧のとおり、ライフサイクル パラメーターを受け入れません。Ninject テスト スイートは合格です。これはキャッスル ウィンザーでもサポートできますか?