【问题标题】:Creating database using EFCodeFirst on a web-server host在 Web 服务器主机上使用 EFCodeFirst 创建数据库
【发布时间】:2012-05-28 07:06:29
【问题描述】:

已在本地系统上使用 EFCodeFirst 创建数据库。但是,当尝试在 Web 服务器主机上创建数据库时,它会给出错误“创建数据库权限被拒绝”。

我无法找出其中的实际问题。

一切正常,如果我在任何其他本地系统上使用 EFcodefirst 创建数据库,但它不适用于 Web 服务器主机。

请帮忙!!

谢谢..

【问题讨论】:

    标签: database ef-code-first webserver


    【解决方案1】:

    因为您在共享网络服务器主机上的架构不是“dbo”。所以你不能或者你没有足够的权限来创建数据库(这是EF代码的默认行为,当它找不到连接字符串指定的数据库时)。 你有 3 个选择(至少):

    • 请求更高的权限(这是不幸的)
    • 首先创建一个新的空数据库,或者要求(主机)这样做,然后在连接字符串中指定其详细信息。
    • 或者只是关闭数据库迁移并手动执行所有操作(设置Database.SetInitializer<MyContext>(null);)。

    【讨论】:

    • 因为这确实让我克服了错误,所以仍然很高兴能够理解为什么在这种情况下已知 IIS APPPOOL 用户的权限在拥有主数据库后无法修改它权限设置这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 2018-08-29
    • 2016-08-15
    • 2015-09-16
    • 1970-01-01
    相关资源
    最近更新 更多