.net core 如何使用dotnet ef database cli命令更新prod数据库?

.net core 如何使用dotnet ef database cli命令更新prod数据库?,.net-core,entity-framework-core,.net-core-3.1,dotnet-cli,dotnetcorecli,.net Core,Entity Framework Core,.net Core 3.1,Dotnet Cli,Dotnetcorecli,如何让EF为prod db构建所有表 到目前为止,我一直在构建并推动所有.Net核心数据库迁移到开发数据库 前 >dotnet ef迁移添加InitialModsN-c Auto2Context >dotnet ef数据库更新-c Auto2Context 在我的Appsettings.Development.json文件中,我的con字符串指向dev db'source=dev' "ConnectionStrings": { "DefaultConnection&

如何让EF为prod db构建所有表

到目前为止,我一直在构建并推动所有.Net核心数据库迁移到开发数据库

>dotnet ef迁移添加InitialModsN-c Auto2Context

>dotnet ef数据库更新-c Auto2Context

在我的Appsettings.Development.json文件中,我的con字符串指向dev db'source=dev'

"ConnectionStrings": {
"DefaultConnection": "Data Source=Auto2.db",
"Auto2": "data source=DEV; initial catalog=Auto2; user id=auto2; password=12345;" }
还有my Appsettings.json,我的prod db con字符串指向prod db'source=LIVE'

"ConnectionStrings": {
"DefaultConnection": "Data Source=Auto2.db",
"Auto2": "data source=LIVE; initial catalog=Auto2; user id=auto2; password=12345;" }
到目前为止,所有的东西都在构建并迁移到dev中,我如何更改它以在prod db中构建所有最新的更改

我是否必须重新创建初始迁移文件,然后进行更新? 如果是,如何将其指向prod db? 我尝试了几个不同的命令,但没有成功。 这是我试过的

>dotnet ef数据库更新-c Auto2Context--连接“数据源=活动;初始目录=自动2;用户id=自动2;密码=12345”

-接收到“无法识别的选项”--连接“”

>dotnet ef数据库更新-c Auto2Context--配置发布

  • 没有在prod db中创建表

在执行命令之前设置
ASPNETCORE\u环境
环境变量:


$env:ASPNETCORE_ENVIRONMENT='Production'
在执行命令之前设置
ASPNETCORE_ENVIRONMENT
环境变量:


$env:ASPNETCORE\u ENVIRONMENT='Production'

以下是我使用的,它似乎很有效

dotnet发布--配置发布/p:EnvironmentName=Production

但这只是构建应用程序。 我必须运行下面的命令来创建一个sql脚本来更新prod db

dotnet ef迁移脚本-i-o“buildscript.sql”-c Auto2Context


这是将db更改推送到prod的最佳/正确方法吗?

以下是我使用的方法,它似乎很有效

dotnet发布--配置发布/p:EnvironmentName=Production

但这只是构建应用程序。 我必须运行下面的命令来创建一个sql脚本来更新prod db

dotnet ef迁移脚本-i-o“buildscript.sql”-c Auto2Context


这是将db更改推送到prod的最佳/正确方法吗?

未识别的选项“--environment”和未识别的选项“-e”我也在两个不同的文件中看到了:ASPNETCORE_environment='Production'。Launchsettings.json和launch.json。据我所知,
$env:ASPNETCORE_ENVIRONMENT='Production'
应该可以工作。这似乎不正确,因为我必须进入此行所在的文件,每次在开发和生产之间手动更改它。这不正确..无法识别的选项'--ENVIRONMENT'和无法识别的选项“-e”我还可以在两个不同的文件中看到:ASPNETCORE_ENVIRONMENT='Production'。Launchsettings.json和launch.json。据我所知,
$env:ASPNETCORE_ENVIRONMENT='Production'
应该可以工作。这似乎不正确,因为我必须进入此行所在的文件,并在每次进入开发和生产之间时手动更改它。这不正确。。