C# 正在为ApplicationDbContext应用现有迁移-无法打开请求的数据库

C# 正在为ApplicationDbContext应用现有迁移-无法打开请求的数据库,c#,sql-server,asp.net-mvc,entity-framework-core,C#,Sql Server,Asp.net Mvc,Entity Framework Core,因此,我有一个ASP.NET MVC应用程序,我使用Visual Studio内部的发布功能将其部署在IIS上。我已经对数据库和应用程序的现有版本进行了一些更改—这就是我所做的:我对生产服务器上的数据库做了很少的更改(只是在两个表中添加了一列,并将它们FK到另一个表中)。然后,我从这个生产数据库中获取generate脚本,转到本地(开发)SQL server并运行generate脚本在本地创建数据库。在此之后,将这个本地DB实例构建到VS中(以在本地获得修改后的模型类)。然后,在对应用程序进行了

因此,我有一个ASP.NET MVC应用程序,我使用Visual Studio内部的发布功能将其部署在IIS上。我已经对数据库和应用程序的现有版本进行了一些更改—这就是我所做的:我对生产服务器上的数据库做了很少的更改(只是在两个表中添加了一列,并将它们FK到另一个表中)。然后,我从这个生产数据库中获取generate脚本,转到本地(开发)SQL server并运行generate脚本在本地创建数据库。在此之后,将这个本地DB实例构建到VS中(以在本地获得修改后的模型类)。然后,在对应用程序进行了一些较小的修改(我基本上只是添加了一些文档上传功能)之后,我发布了应用程序并将其部署到生产服务器上。 但是,我在尝试登录网站时遇到以下错误: 为什么会发生这种情况?如果我在本地运行建议的
updatedatabase
命令(从那里我无法到达目标数据库),如何通过visualstudio包管理器命令应用迁移?
非常感谢您的帮助。

您需要为更改添加迁移,如下所示:

Add-Migration Version2
它生成迁移文件,然后您可以运行

Update-Database
在数据库中应用更改。
您不能手动迁移数据库更改。应该在“添加迁移”命令下创建新的迁移版本。

谢谢。但是,如果我不是针对本地数据库,而是针对另一台服务器上的数据库,我看不出这将如何工作。
updatedatabase
命令只能影响本地数据库。我对这个错误有点困惑,因为我已经对目标数据库进行了必要的更改,然后使用了数据库优先的方法。那么迁移的目的是什么?Update Database命令以本地sql server数据库为目标如果要在远程服务器中进行更改,可以使用类似于Update Database-ConnectionStringName“MyConnectionString”的参数