我想为第二个和后续的数据库创建一个迁移,这个迁移位于一个类库中,与使用它的项目不同。有个皱纹。在用户登录并可以从目录数据库(saas)获得连接字符串之前,我永远不会知道连接字符串。
对于目录数据库,我使用了来自这站点的解决方案。这很好--这个数据库在appsettings.json中有它的连接字符串,可以使用依赖注入。
使用相同的迁移,客户端数据库都将是相同的。我的问题是,我不知道如何从Package控制台创建这个初始迁移。
我确实试过这么做:
dotnet ef migrations add INITIAL --context APIcontext -s ../Jobsledger.API它给了我以下错误:
没有为此DbContext配置数据库提供程序。
我料到的。
鉴于在不同类库中运行迁移的CodingBlast解决方案(上面)需要一个我没有的连接,并且需要在启动时注册数据库连接.
..and考虑到要创建的每个用户数据库都要使用这种迁移,我如何创建它,当然也可以使用它?
发布于 2021-06-08 03:55:21
我确实回答了类似的问题,这里。
您可以在不使用连接字符串实例化IDesignTimeDbContextFactory的情况下实现DbContext。
对于不同的库,您可以使用-项目和-启动-项目参数。
下面是我用来生成迁移脚本的示例:
dotnet ef migrations script --context MyDbContext --output migrations.sql --project "./MyApp.Data" --startup-project "./MyApp.Data"
https://stackoverflow.com/questions/55980487
复制相似问题