2011-03-10 105 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对象上调用相同的方法。