我用什么替换 IUnityContainer.Registrations.ToList() ?

What do I replace IUnityContainer.Registrations.ToList() with?

我最近收到了一份支持申请。它在 MVC3 中使用 NHibernate 和 Unity 以及许多其他包。在升级到 MVC5 时,我将所有包更新到最新版本。现在的问题是 Unity 从 IUnityContainer 中删除了几个 properties/methods。我想知道如何替换这些代码行以使我的代码再次编译?

IUnityContainer.Registrations.ToList()

IUnityContainer.IsRegistered(serviceType)

IUnityContainer 当然被定义为 IUnityContainer 对象,我并没有尝试直接使用该类型。

我在网上找不到任何关于用什么来代替它们的信息。我从 Microsoft 看到这些方法已被弃用,但没有理由弃用它们。

对于 MVC 5,我建议使用 Unity 3.5。这是 MVC 5 可用的稳定版本。您应该能够通过使用 Nuget 提示获取它。

Unity 4 在我看来仍在开发中,缺少迁移指南。参见 here