【发布时间】:2014-12-21 07:43:26
【问题描述】:
根据 MSDN,如果您使用 RegisterInstance 方法注册了对象的现有实例,则容器会为所有对 Resolve 或 ResolveAll 的调用或当依赖机制将实例注入其他类时返回相同的实例。
我为dataService层创建了一个项目并使用了
container.RegisterInstance<IQuoteSource>(new IBQuoteSource());
我希望每当我需要IQuoteSource 时,在应用程序的生命周期内只创建一个实例。
但是在另一个项目程序集中,当我在构造函数中使用接口时,发生的是另一个IBQuoteSource被创建。(我可以看到IBQuoteSource的构造函数被再次调用)那么如何跨接口共享一个实现申请?
public ClickViewModel( IQuoteSource quoteSource)
{
this.quoteSource = quoteSource;
ComboItems = new List<string>() { "GTC Order", "Day Order" };
SelectedComBoItem = ComboItems[1];
}
【问题讨论】:
-
如何注册你的注入构造函数?
标签: wpf unity-container prism prism-5