A high-performance Managed Extensibility Framework (MEF) implementation used by Visual Studio for building extensible .NET applications.
vs-mef is Microsoft's high-performance implementation of the Managed Extensibility Framework (MEF) used by Visual Studio. It provides a faster MEF engine that maintains compatibility with existing .NET MEF attributes while offering improved performance and additional tooling for building extensible applications.
.NET developers building extensible applications, particularly those working on Visual Studio extensions or large-scale applications requiring plugin architectures and dependency injection.
Developers choose vs-mef for its significant performance improvements over standard .NET MEF implementations while maintaining full compatibility with existing code, plus it includes diagnostic tools and analyzers specifically designed for troubleshooting MEF composition issues.
Managed Extensibility Framework (MEF) implementation used by Visual Studio
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a lightning-fast MEF host that significantly improves composition speed over standard .NET MEF, as optimized for Visual Studio's demanding scenarios.
Reuses existing MEF attributes from System.ComponentModel.Composition and System.Composition, allowing drop-in replacement without code changes, as highlighted in the documentation.
Includes ExportFactory for creating sub-containers with scoped lifetimes and sharing boundaries, enabling flexible dependency management in complex applications.
Offers VSMefx for diagnostics and analyzers for static analysis, helping developers troubleshoot and prevent MEF issues during development.
Primarily optimized for Visual Studio extensions, which may introduce unnecessary complexity or limitations for general-purpose .NET applications outside that ecosystem.
Requires familiarity with MEF patterns and vs-mef-specific features, making it less approachable compared to simpler, more modern DI containers like those built into ASP.NET Core.
Tied to Microsoft's Visual Studio roadmap, which could lead to slower adoption of new .NET features or breaking changes not aligned with standard MEF implementations.