TCIS.MultiTenancy.EntityFrameworkCore 1.0.0-rc.9

This is a prerelease version of TCIS.MultiTenancy.EntityFrameworkCore.
dotnet add package TCIS.MultiTenancy.EntityFrameworkCore --version 1.0.0-rc.9
                    
NuGet\Install-Package TCIS.MultiTenancy.EntityFrameworkCore -Version 1.0.0-rc.9
                    
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="TCIS.MultiTenancy.EntityFrameworkCore" Version="1.0.0-rc.9" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="TCIS.MultiTenancy.EntityFrameworkCore" Version="1.0.0-rc.9" />
                    
Directory.Packages.props
<PackageReference Include="TCIS.MultiTenancy.EntityFrameworkCore" />
                    
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 TCIS.MultiTenancy.EntityFrameworkCore --version 1.0.0-rc.9
                    
#r "nuget: TCIS.MultiTenancy.EntityFrameworkCore, 1.0.0-rc.9"
                    
#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 TCIS.MultiTenancy.EntityFrameworkCore@1.0.0-rc.9
                    
#: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=TCIS.MultiTenancy.EntityFrameworkCore&version=1.0.0-rc.9&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=TCIS.MultiTenancy.EntityFrameworkCore&version=1.0.0-rc.9&prerelease
                    
Install as a Cake Tool

TCIS.MultiTenancy.EntityFrameworkCore

The library providing a storage mechanism (Store) and management for Tenant information in a Multi-Tenancy system using Entity Framework Core. This library seamlessly integrates with Finbuckle.MultiTenant to manage tenant configurations from the database.

📦 Installation

dotnet add package TCIS.MultiTenancy.EntityFrameworkCore

🚀 Configuration and Registration (Program.cs)

You can register the EFCoreStore into the Multi-Tenancy configuration chain by using WithEFCoreStore.

using TCIS.MultiTenancy.EntityFrameworkCore.Extensions;
using TCIS.MultiTenancy.Abstractions;
using TCIS.MultiTenancy.EntityFrameworkCore.Stores;

var builder = WebApplication.CreateBuilder(args);

// Declare the EF Core Store
builder.Services.AddMultiTenant<TenantInfo>()
    .WithHeaderStrategy()
    // Store and retrieve Tenant information from the Database via an EF Core DbContext
    .WithEFCoreStore<MyTenantDbContext, TenantInfo>();

var app = builder.Build();
app.Run();

💡 Usage

1. Inheriting EFCoreStoreDbContext

You need to create a DbContext that manages Tenant information by inheriting from EFCoreStoreDbContext<TTenantInfo> provided by the library:

using Microsoft.EntityFrameworkCore;
using TCIS.MultiTenancy.Abstractions;
using TCIS.MultiTenancy.EntityFrameworkCore.Stores;

public class MyTenantDbContext : EFCoreStoreDbContext<TenantInfo>
{
    public MyTenantDbContext(DbContextOptions<MyTenantDbContext> options) 
        : base(options)
    {
    }
}

2. Table Structure

By default, the TenantInfo entity will contain the necessary information about a Tenant (Id, Identifier, Name, ConnectionString...). When using EFCoreStore, the library will directly query this Tenant storage table to configure the system for each incoming request.

Cache Warning:

  • The application's DbContexts (not the DbContext storing Tenant info) must ensure that the Model Cache Key properly handles the Isolation Tier to prevent data leaks or RAM overflow.
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-rc.9 25 7/21/2026
1.0.0-rc.8 27 7/21/2026
1.0.0-rc.7 43 7/17/2026
1.0.0-rc.6 54 7/7/2026
1.0.0-rc.5 59 7/7/2026
1.0.0-rc.4 67 6/24/2026
1.0.0-rc.2 71 5/12/2026
1.0.0-rc.1 61 5/12/2026