2011-02-04 164 views
2

我在StructureMap中使用混合緩存,但是在我的單元測試期間,我希望能夠清除StructureMap的緩存,以便代碼將構造新對象而不是從緩存中取出緩存。如何清除StructureMap緩存?

我看不到有什麼方法可以清除StructureMap中的緩存對象。即使當我重新初始化配置時,它仍然會返回初始對象。

有沒有人有這方面的工作?我會認爲ResetDefaults會解決這個問題,但它並沒有!

+0

爲什麼你*單元*測試依賴於StructureMap緩存?你真的在做集成測試嗎?如果單元測試只測試一個類/單元,則單元測試不應取決於任何類型的SM配置。 – Pete 2011-02-04 13:40:01

回答

3

你試過

void IContainer::EjectAllInstancesOf<T>() 
+0

輝煌 - 謝謝! – James 2011-02-04 15:58:09