Castle Windsor KernalのComponentModelCreatedイベントを使用して、コンポーネントのライフスタイルを管理しようとしています。
問題は、イベントがまったく発生していないように見えることです。どういうわけか間違って使っているに違いない?以下の私のコードを参照してください。どこが間違っているのか知りたいです。
ありがとう。
私のApplication_Startで:
Container = new WindsorContainer().Install(FromAssembly.This());
Container.Kernel.ComponentModelCreated += WindsorExtension.Kernel_ComponentModelCreated;
方法:
public static void Kernel_ComponentModelCreated(ComponentModel model)
{
if (model.LifestyleType == LifestyleType.Undefined && model.Name.EndsWith("Controller"))
{
model.LifestyleType = LifestyleType.Transient;
}
else if (model.LifestyleType == LifestyleType.Undefined)
{
model.LifestyleType = LifestyleType.PerWebRequest;
}
}