C# 温莎城堡生活方式配置之间的差异
这两者有什么区别C# 温莎城堡生活方式配置之间的差异,c#,inversion-of-control,castle-windsor,C#,Inversion Of Control,Castle Windsor,这两者有什么区别 Component.For<IMyType>() .LifeStyle .PerWebRequest .UsingFactoryMethod(() => new MyType()); Component.For() .生活方式 PerWebRequest先生 .UsingFactoryMethod(()=>new MyType()); 及 Component.For() .UsingFactoryMethod(()=>new MyT
Component.For<IMyType>()
.LifeStyle
.PerWebRequest
.UsingFactoryMethod(() => new MyType());
Component.For()
.生活方式
PerWebRequest先生
.UsingFactoryMethod(()=>new MyType());
及
Component.For()
.UsingFactoryMethod(()=>new MyType())
.生活方式
.Is(LifestyleType.PerWebRequest);
它们是一样的。唯一的区别是API被简化了(变得更简洁、更直接)。使用Windsor 3,您可以进一步简化:
Component.For<IMyType>()
.LifestylePerWebRequest()
.UsingFactoryMethod(() => new MyType());
Component.For()
.LifestylePerWebRequest()
.UsingFactoryMethod(()=>new MyType());
希望这有帮助 此外,第一种是“硬编码”的生活方式,而后者可能会使用时,生活方式是从外部提供
Component.For<IMyType>()
.LifestylePerWebRequest()
.UsingFactoryMethod(() => new MyType());