.NET Core(或ASP.NET 5)中是否有MEF的替代品

我们知道.NET Core(开源组件)只是完整.NET Framework的一个子集,而ASP.NET 5(和MVC 6)是基于.NET Core构建的。 这是否意味着ASP.NET 5中没有Managed Extensibility Framework(MEF)?

如果是这样,.NET Core中是否有可用的动态可扩展性替换?

我有许多使用MEF来动态加载插件和外部集成的应用程序,如果他们因为使用MEF而被锁定在.NET Framework中,那将是一个遗憾。

现有的NuGet包应该可以工作。 它是可移植的,.NET Core是便携式API表面的向后兼容演进。 ASP.NET Core不会自动安装它,但是因为该软件包没有明确表示它与.NET Core兼容。

要安装软件包,您需要在project.json添加一个imports部分:

 { "dependencies": { "Microsoft.Composition": "1.0.30" }, "frameworks": { "netcoreapp1.0": { "imports": "portable-net45+win8" } } }