TCIS.Pluggable.Abstractions
1.0.0-rc.9
dotnet add package TCIS.Pluggable.Abstractions --version 1.0.0-rc.9
NuGet\Install-Package TCIS.Pluggable.Abstractions -Version 1.0.0-rc.9
<PackageReference Include="TCIS.Pluggable.Abstractions" Version="1.0.0-rc.9" />
<PackageVersion Include="TCIS.Pluggable.Abstractions" Version="1.0.0-rc.9" />
<PackageReference Include="TCIS.Pluggable.Abstractions" />
paket add TCIS.Pluggable.Abstractions --version 1.0.0-rc.9
#r "nuget: TCIS.Pluggable.Abstractions, 1.0.0-rc.9"
#:package TCIS.Pluggable.Abstractions@1.0.0-rc.9
#addin nuget:?package=TCIS.Pluggable.Abstractions&version=1.0.0-rc.9&prerelease
#tool nuget:?package=TCIS.Pluggable.Abstractions&version=1.0.0-rc.9&prerelease
TCIS.Pluggable.Abstractions
📖 Overview
TCIS.Pluggable.Abstractions is an SDK serving the Plugin/Modular architecture of the TCIS Framework. It provides core interfaces for building Pipeline Steps, Contexts, and an Auto-Discovery system for distinct modules specific to each Tenant/Site.
✨ Features
ISiteModule: Defines the entry point for a Site-specific module (Plugin or Core Module). Used during the discovery phase to initialize site-specific services.IModuleRegistry: Manages the Plugin modules loaded into the system.IPluggableDiscoveryHook: A hook that supports customization of the Plugin discovery process.- Pipeline Abstractions: Interfaces supporting the internal pipeline/middleware architecture.
📦 Installation
dotnet add package TCIS.Pluggable.Abstractions
🚀 Usage
Initializing a Site Module
A Plugin or Module belonging to a specific Site must implement the ISiteModule interface.
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using TCIS.Pluggable.Abstractions.Interfaces;
public class MyTenantSiteModule : ISiteModule
{
// Unique ID of the Site/Tenant
public string SiteCode => "TENANT_001";
public void RegisterServices(IServiceCollection services, IConfiguration configuration)
{
// Register Tenant/Plugin specific services
// Example: services.AddScoped<ITenantSpecificService, MyTenantService>();
}
}
⚠️ Architectural Directives
- Plugins that do not alter the Database Schema SHOULD NOT implement the
ISiteCoreModuleinterface (so the system can use the core EF model cache, saving RAM). - Avoid calling
GetService<T>()directly insideOnModelCreatingunless the service has aSingletonlifetime.
| Product | Versions 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. |
-
net8.0
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- TCIS.Core (>= 1.0.0-rc.9)
- TCIS.Persistence.Abstractions (>= 1.0.0-rc.9)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on TCIS.Pluggable.Abstractions:
| Package | Downloads |
|---|---|
|
TCIS.Pluggable.Engine
TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Execution engine and registry for TCIS Pluggable Pipeline Architecture. |
|
|
TCIS.Pluggable.Persistence.EntityFrameworkCore
TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Pluggable Persistence EntityFrameworkCore |
|
|
TCIS.Mediator.Keyed
TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Multi-tenant support for TCIS.Mediator using Keyed Services. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-rc.9 | 47 | 7/21/2026 |
| 1.0.0-rc.8 | 46 | 7/21/2026 |
| 1.0.0-rc.7 | 66 | 7/17/2026 |
| 1.0.0-rc.6 | 75 | 7/7/2026 |
| 1.0.0-rc.5 | 85 | 7/7/2026 |
| 1.0.0-rc.2 | 73 | 5/12/2026 |