# finbuckle-multitenant-sample **Repository Path**: ymjake/finbuckle-multitenant-sample ## Basic Information - **Project Name**: finbuckle-multitenant-sample - **Description**: Finbuckle.MultiTenant使用EfCore为Configuration Store的学习示例,使用PostgreSQL完成Schema策略隔离 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-07-01 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: Aspnet, multitenant ## README # Finbuckle.MultiTenant学习示例 #### 介绍 本项目是一个使用 Finbuckle.MultiTenant 的学习示例,展示了如何在 ASP.NET Core 应用程序中实现多租户功能。Finbuckle.MultiTenant 是一个用于在 .NET 应用程序中实现多租户架构的库,支持多种租户识别和隔离策略。 #### 软件架构 本项目包含三个主要的子项目,分别演示了不同的多租户实现方式: 1. **MultiTenant.SeparateDb.Api** - 每个租户使用独立的数据库。 2. **MultiTenant.SeparateSchema.Api** - 所有租户共享同一个数据库,但每个租户使用独立的 Schema。 3. **MultiTenant.ShareDb.Api** - 所有租户共享同一个数据库和表,通过租户标识字段进行隔离。 每个子项目都包含了应用程序的上下文管理、迁移扩展、模型定义以及相关的配置文件。 #### 安装教程 1. 安装 [.NET SDK](https://dotnet.microsoft.com/download)(如果尚未安装)。 2. 克隆本仓库到本地: ```bash git clone https://gitee.com/ymjake/finbuckle-multitenant-sample.git ``` 3. 进入项目目录: ```bash cd finbuckle-multitenant-sample ``` 4. 恢复项目依赖: ```bash dotnet restore ``` 5. 构建项目: ```bash dotnet build ``` #### 使用说明 1. **启动应用程序**: - 进入任意子项目目录(如 `MultiTenant.SeparateDb.Api`): ```bash cd MultiTenant.SeparateDb.Api ``` - 运行应用程序: ```bash dotnet run ``` - 应用程序默认会在 `https://localhost:5001` 上运行。 2. **访问 API**: - 使用 HTTP 客户端(如 Postman 或 curl)访问 `/api/products` 端点,确保在请求头中包含租户标识(如 `X-Tenant-Identifier`)。 3. **数据库迁移**: - 如果需要应用数据库迁移,请运行以下命令: ```bash dotnet ef database update --project MultiTenant.SeparateDb.Api ``` #### 参与贡献 1. Fork 本仓库。 2. 新建 Feat_xxx 分支。 3. 提交代码。 4. 新建 Pull Request。 #### 特技 1. 使用 `Readme_XXX.md` 来支持不同的语言,例如 `Readme_en.md`, `Readme_zh.md`。 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以通过 [https://gitee.com/explore](https://gitee.com/explore) 了解 Gitee 上的优秀开源项目。 4. [GVP](https://gitee.com/gvp) 是 Gitee 最有价值开源项目,综合评定出的优秀开源项目。 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)