无效的对象名称&#d; .dspNetUsers'在带有Identity的MVC5站点中

时间:2014-07-14 20:15:03

标签: asp.net-mvc entity-framework asp.net-identity shared-hosting

在我的本地计算机上,一切都运行良好,数据库所有者是dbo'。但随后我将其部署到一个共享主机网站,该网站不允许我们使用“dbo”#。而是表所有者是我连接的sql server用户。我们打电话给他' sheldoncooper'。所以我的所有表都是sheldoncooper.AspNetUsers,sheldoncooper.AspNetRoles,sheldoncooper.AspNetUserClaims等等。

看起来Identity系统正在寻找硬编码的dbo.AspNetUsers,dbo.AspNetRoles等。

如何告诉它不要键入dbo?

[编辑] NVM,这绝对是一个重复。

1 个答案:

答案 0 :(得分:0)

您可以为每个表指定要使用的架构,但在您的情况下,通过重写OnModelCreating方法可能更容易全局更改它:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    // You can globally assign schema here
    modelBuilder.HasDefaultSchema("sheldoncooper");
}