我使用以下代码来初始化我的SM容器。 abelow代码工作正常。但是现在我需要在创建CultureInfo实例时传递不同的文化名称。简而言之,我想在运行时将一些输入传递给GetCultureName()方法。这是SM的有效使用还是我应该使用适当的culturename直接在我的代码中实例化CultureInfo。
public static IContainer Initialize()
{
ObjectFactory.Initialize(x =>
{
x.Scan(scan =>
{
scan.TheCallingAssembly();
scan.WithDefaultConventions();
});
x.For<ICultureInfoProvider>()
.Use<DummyCultureInfoProvider>();
x.For<IDocumentService>().Use<DummyDocumentService>()
.Ctor<CultureInfo>("cultureInfo")
.Is(i => new CultureInfo(i.GetInstance<ICultureInfoProvider>().GetCultureName()));
});
return ObjectFactory.Container;
}