Xpandables.Composition 10.0.2

dotnet add package Xpandables.Composition --version 10.0.2
                    
NuGet\Install-Package Xpandables.Composition -Version 10.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Xpandables.Composition" Version="10.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Xpandables.Composition" Version="10.0.2" />
                    
Directory.Packages.props
<PackageReference Include="Xpandables.Composition" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Xpandables.Composition --version 10.0.2
                    
#r "nuget: Xpandables.Composition, 10.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Xpandables.Composition@10.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Xpandables.Composition&version=10.0.2
                    
Install as a Cake Addin
#tool nuget:?package=Xpandables.Composition&version=10.0.2
                    
Install as a Cake Tool

System.Composition

NuGet NuGet Downloads .NET License

MEF-based modular service composition for .NET dependency injection.

📖 Overview

System.Composition (NuGet: Xpandables.Composition) provides IAddServiceExport and MEF catalog types for discovering and registering services from external assemblies using the Managed Extensibility Framework (System.ComponentModel.Composition). Namespace: System.Composition.

Built for .NET 10 and C# 14.

✨ Features

Type File Description
IAddServiceExport IAddServiceExport.cs MEF export interface — decorate with [Export(typeof(IAddServiceExport))]
EmptyCatalog ExportCatalogs.cs Empty ComposablePartCatalog
RecursiveDirectoryCatalog ExportCatalogs.cs Recursively scans directories for assemblies containing exports

⚙️ Dependency Injection

C# 14 extension members on IServiceCollection:

services.AddXServiceExports(configuration);
services.AddXServiceExports(configuration, options =>
{
    options.SearchPattern = "*.dll";
    options.Path = "/plugins";
});

📦 Installation

dotnet add package Xpandables.Composition

Dependencies: System.ComponentModel.Composition
Project References: Xpandables.Primitives

🚀 Quick Start

Define an Export

using System.ComponentModel.Composition;
using System.Composition;

[Export(typeof(IAddServiceExport))]
public class MyModuleExport : IAddServiceExport
{
    public void AddServices(IServiceCollection services, IConfiguration configuration)
    {
        services.AddScoped<IMyService, MyService>();
    }
}

Register at Startup

builder.Services.AddXServiceExports(builder.Configuration);

📄 License

Apache License 2.0 — Copyright © Kamersoft 2025

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Xpandables.Composition:

Package Downloads
Xpandables.AspNetCore.Composition

AspNetCore Composition implementation.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.0.2 35 3/15/2026
10.0.1 97 2/20/2026
10.0.0 106 1/9/2026