2014-04-08 94 views
0

我剛剛在MSDN雜誌上閱讀了Laurent的Messenger文章,嘗試過幾次測試,並且所有內容都按預期工作。有沒有辦法通過ServiceLocator在運行時註冊接口?

在「實現DialogService」部分中,我注意到IDialogService的註冊是通過對SimpleIoc的調用直接完成的。無論如何要註冊調用ServiceLocator的接口嗎?

我認爲使用ServiceLocator的全部意義在於您可以將SimpleIoc換成另一個IOC?如果我的視圖和視圖模型直接調用SimpleIoc,它就會失去目的。也許我不瞭解如何從ServiceLocator獲取Ioc。

回答

0

Microsoft.Practices.ServiceLocation.IServiceLocator僅用於「獲取」方案。

這是因爲每一個IoC容器都有不同的特點,因此不同的方式進行註冊:通過從XML配置文件

    • 代碼(如您可能正在尋找)
    • 某些特定於應用程序的外部數據源

    例如,就像它在MVVM Light中使用的一樣,它也可以用於非常不同應用:SharePoint

  • 相關問題