2011-03-10 97 views
1

我們一直在使用2.5.3版本,現在我們正在嘗試升級到2.6.1並且存在一些兼容性問題。StructureMap 2.6.1的向後兼容性問題

  1. 以前的版本有StoragePolicy-類,如ThreadLocalStoragePolicyHttpContextStoragePolicy所有有方法DisposeAndClearAll。新版本似乎已將類重命名爲X_StorageLifecycle,而HttpContext有一個名爲ReleaseAndDispose的方法,並且在ObjectFactory上甚至有一個方法ReleaseAndDisposeAllHttpScopedObjects,我認爲它們的確如此。但是:ThreadLocalStorageLifecycle的功能在哪裏去了?

  2. 我們曾經調用ObjectFactory.Inject("name", instance)爲單元測試添加命名實例。這似乎沒有更多的重載注入一個命名實例?!我現在使用的是ObjectFactory.Configure(o => o.For<T>().Use(instance).Named("name"),但這並不像是最簡單的方法。我在這裏錯過了什麼?

+0

不知道2.6了。感謝您的領導! – smartcaveman 2011-03-10 15:27:26

回答

0

看來,「人」只是懶惰;-)的功能仍然存在,但所有的快捷方式都失蹤了!

  1. 改爲調用「new ThreadLocalStorageLifecycle()。EjectAll()」。

  2. 在ObjectFactory.Container對象上調用相同的方法。