实体框架4.3托管SQL Server没有数据库创建权限

时间:2012-06-21 10:02:09

标签: c# sql entity-framework-4

我的SQL Server由我的托管服务提供商托管。这意味着我没有权限重新创建(或创建)数据库。

这让我觉得EF 4有问题 - 它认为表格丢失了,它们就是这样。我认为是由于无法重新创建数据库造成的。

回顾一下:在本地开发,第一次运行转移到托管服务器,切换连接字符串,针对托管服务器运行,错误说无效对象名称'dbo.Products'。

我有权创建除DB之外的任何其他内容

我在这个假设中是否正确,我该如何解决这个问题呢?

2 个答案:

答案 0 :(得分:1)

在EF 4.3中,您可以使用visual studio中工具菜单项中的Package Manager控制台。这将允许您使用迁移来生成数据库脚本。更多信息在这里

http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx

您当然可以创建一个drop并自己创建脚本

答案 1 :(得分:0)

您可以手动创建数据库并设置Database.SetInitializer(null),也可以尝试使用EF 5 RC。在release notes中,您可以看到他们解决了这个问题。