表已存在于数据库中(仅在Azure上发布时)

时间:2015-05-07 14:26:31

标签: c# entity-framework azure azure-sql-database ef-migrations

在我的ASP.Net MVC5 EF6项目中,一切都运行良好,直到我遇到数据库问题。我发现解决它们的唯一方法是删除我的数据库和迁移文件夹。我从头开始重新创建了所有内容,它解决了我在本地遇到的每一个问题(localhost)。

然后我尝试将我的网络应用程序发布到Azure,现在每次尝试在我的应用程序中登录时都会出现此错误(第一次使用我的上下文):

  

数据库中已有一个名为“公司”的对象。

我在互联网上搜索了几个小时,并且发现了这个错误,只有在数据库和Web应用程序发布时才会发生(因为它在本地调试时工作得很好)。

我已经阅读了很多关于迁移被搞砸的理论,所以我在Azure门户上删除了我的sql数据库和我的Web应用程序并创建了新的。即使在此之后,我仍然会收到错误。

所以我的代码中似乎有一个问题,我知道EF6正在尝试第二次创建这个数据库表,但是我发现代码中没有地方可以做到这一点(更不用说它只在发布时发生) 。我还必须告诉你,WebConfig和我的DbContext中没有任何改变。只更改了我的模型和我的迁移文件夹。

我肯定在这里遗漏了一些东西,我真的想要一些帮助来更好地理解EF6。我是这项技术的新手,我发现它在工作时非常有用但是当你遇到错误时,它会变得非常痛苦。

0 个答案:

没有答案