无法用数据填充 azure db。网页已连接到数据库但不想创建表
Cannot fill azure db with data. WebPage is connected to database but don't want to create tables
我使用 asp.net MVC 和 Entity Framework Code First 创建了网站。它之前在 Windows Azure 上运行,该站点是公开可用的。
出于某种原因,我删除了用于存储我网页数据的数据库。我创建了一个新的,与之前的类似。
我正确地将我的站点连接到数据库(在解决方案中我单击了 "Publish",在 "Settings" 中有地方可以输入有关数据库的数据,在 "Destination Connection String" window 中我输入所有需要的数据并单击 "Test Connection" - 一切似乎都很好)
我发布了我的网站,该网站运行正常,但是当我转到从数据库获取数据的页面时看到此错误:
Invalid object name 'dbo.AspNetUsers'.
In Visual Studio in "SQL Server Explorer" 我可以看到我的数据库中有什么。事实上,里面什么都没有(有一个 table: "__MigrationHistory",我怀疑这是默认创建的)。
如何再次生成所有这些 table?它应该自动生成数据库结构。
PS: 我不小心从我的项目中删除了 "migations",你认为这是原因吗?
这不是我的项目的问题,它在我的计算机上的本地主机上运行正常,当我删除 localDB 时,它生成新的没有任何问题。
是的,您需要迁移。但是您始终可以重新创建它们(好吧,如果您将它们全部删除,它将是包含您之前所有迁移的初始迁移)。
要快速修复,您可以在服务器上备份和恢复您的数据库。如果您需要重新创建迁移,请执行以下操作:
- 备份所有数据
- 删除整个数据库(本地和远程),从代码中删除所有迁移。
- 创建数据库(本地和远程)。
- 运行 "add-migration Initial" 来自 PM 控制台的命令
- 运行 "update-database" 来自 PM 控制台。
- 再次将您的代码上传到服务器。如果数据库为空,则应自动应用新的初始迁移。
我使用 asp.net MVC 和 Entity Framework Code First 创建了网站。它之前在 Windows Azure 上运行,该站点是公开可用的。
出于某种原因,我删除了用于存储我网页数据的数据库。我创建了一个新的,与之前的类似。
我正确地将我的站点连接到数据库(在解决方案中我单击了 "Publish",在 "Settings" 中有地方可以输入有关数据库的数据,在 "Destination Connection String" window 中我输入所有需要的数据并单击 "Test Connection" - 一切似乎都很好)
我发布了我的网站,该网站运行正常,但是当我转到从数据库获取数据的页面时看到此错误:
Invalid object name 'dbo.AspNetUsers'.
In Visual Studio in "SQL Server Explorer" 我可以看到我的数据库中有什么。事实上,里面什么都没有(有一个 table: "__MigrationHistory",我怀疑这是默认创建的)。
如何再次生成所有这些 table?它应该自动生成数据库结构。
PS: 我不小心从我的项目中删除了 "migations",你认为这是原因吗?
这不是我的项目的问题,它在我的计算机上的本地主机上运行正常,当我删除 localDB 时,它生成新的没有任何问题。
是的,您需要迁移。但是您始终可以重新创建它们(好吧,如果您将它们全部删除,它将是包含您之前所有迁移的初始迁移)。
要快速修复,您可以在服务器上备份和恢复您的数据库。如果您需要重新创建迁移,请执行以下操作:
- 备份所有数据
- 删除整个数据库(本地和远程),从代码中删除所有迁移。
- 创建数据库(本地和远程)。
- 运行 "add-migration Initial" 来自 PM 控制台的命令
- 运行 "update-database" 来自 PM 控制台。
- 再次将您的代码上传到服务器。如果数据库为空,则应自动应用新的初始迁移。