namespace MarcoBMS.Services.Middleware { public class TenantMiddleware { private readonly RequestDelegate _next; public TenantMiddleware(RequestDelegate next) { _next = next; } public async Task Invoke(HttpContext context) { if (context.User.Identity != null && context.User.Identity.IsAuthenticated) { var tenantId = context.User.FindFirst("tenantId")?.Value; if (tenantId == null) { tenantId = "1"; } if (!string.IsNullOrEmpty(tenantId)) { context.Items["TenantId"] = tenantId; } } await _next(context); } } }