我试图重构我的代码以使用Common Service Locator。我有一个其他组件使用的共享库。ServiceLocator的消费者是否应该调用ServiceLocator.Current?
我不明白的是:这些组件是否应该调用ServiceLocator.Current并解决它们的类型?在这种情况下,我怎样才能确保ServiceLocator.Current实际设置?我应该创建自己的“MyServiceLocator”并添加一个静态构造函数吗? (这似乎打败了具有标准化抽象的目的)
或者我的共享库有一个类,公开属性公开属性,从而保持ServiceLocator完全内部的共享库吗? (这意味着在抽象的抽象之上抽象)?
问题是组件不是通过DI创建的,而是应该调用容器来获取他们需要的任何东西。
烧SL,烧!! – 2010-07-07 08:34:14