2011-12-22 18 views
1

假設我用Openrasta:在依賴解析器交換實例

resolver.AddDependencyInstance(IInterface, instance, DependencyLifetime.Singleton) 

現在登記在OpenRasta的依賴解析器某些情況下,如果我想以後調換該實例,說從數據庫中重新讀取新的數據,是另一個電話resolver.AddDependencyInstance做正確的事情?

檢查InternalDependencyResolver實現,似乎沒有問題。然而,我問,因爲行爲沒有定義(在openrasta的來源,我檢查),和方法前綴「添加」暗示不同的行爲。

回答

1

如果您必須在某個時間點交換實例,我不會使用Singleton。 使用DependencyLifetime.Transient並在需要新實例的類中創建構造函數注入