ABP框架的设计是模块化的, 微服务兼容 和 多租户. 同时设计了连接字符串管理来支持这些场景;
- 允许为每个模块设置单独的连接字符串,这样每个模块都可以有自己的物理数据库. 甚至可以将模块配置为使用不同的DBMS.
- 允许为每个租户设置单独的连接字符串使用单独的数据库(在SaaS应用程序中).
它还支持混合场景;
- 允许将模块分组到数据库 (所有的模块分组到一个共享数据库, 两个模块使用数据库A, 3个模块使用数据库B, 一个数据库使用数据库C,其余的数据库使用数据库D...等.)
- 允许将租户分组到数据库中,像模块一样.
- 允许为每个租户每个模块分离数据库 (数据库过多会增加维护成本,但ABP框架支持这种需求).
配置连接字符串
"ConnectionStrings": { "Default": "Server=localhost;Database=MyMainDb;Trusted_Connection=True;", "AbpIdentityServer": "Server=localhost;Database=MyIdsDb;Trusted_Connection=True;", "AbpPermissionManagement": "Server=localhost;Database=MyPermissionDb;Trusted_Connection=True;"}
ABP使用 IConfiguration 服务获取应用程序配置. 虽然在 appsettings.json 文件中写入配置是最简单的方法, 但它不仅限于此文件. 你可以使用环境变量, user secrets, Azure Ke