分层解决方案:Db Migrator
Db Migrator 项目
Db Migrator 项目是一个控制台应用程序,旨在处理数据库架构迁移和填充种子数据。它作为一个独立的应用程序运行,可以根据需要手动执行,或集成到 CI/CD 流水线中。
使用方法
您可以通过以下方式运行 Db Migrator 应用程序:
- 从命令行运行。
- 直接在 Visual Studio 中运行。
配置
Db Migrator 项目拥有独立的配置,与主应用程序分开。如果您需要更新数据库连接字符串或任何相关设置,请确保在主应用程序和 Db Migrator 中同时应用更改,以避免配置不一致。
文件夹结构
在 *.DbMigrator 项目中,您将找到 DbMigratorHostedService 类,它负责执行数据库迁移和数据种子填充。该类在 Program 类中注册,并在应用程序启动时开始运行。
层级与职责
*.Domain层:
包含Data文件夹,其中存放用于管理数据库迁移和种子数据的必要类。然而,由于*.Domain层不引用EntityFrameworkCore包,它仅定义了数据迁移的抽象接口。*.EntityFrameworkCore层:
该层负责实现数据库架构迁移。它包含EntityFrameworkCore[ProjectName]DbSchemaMigrator类,该类使用EntityFrameworkCore包处理实际的迁移逻辑。
抠丁客


