加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 在Web Api 2中更改IdentityUser表的模式

发布时间:2020-12-16 03:59:36 所属栏目:asp.Net 来源:网络整理
导读:我正在使用Web Api 2.0和使用表单身份验证创建一个项目.我的问题是更改AspNet自动生成的表的默认模式名称. 例如; dbo.AspNetUsers — User.AspNetUsers 我已经尝试使用ALTER SCHEMA查询在数据库中更改它们,我已将此模型添加到我的项目中 public class UserAc
我正在使用Web Api 2.0和使用表单身份验证创建一个项目.我的问题是更改AspNet自动生成的表的默认模式名称.

例如;

dbo.AspNetUsers —> User.AspNetUsers

我已经尝试使用ALTER SCHEMA查询在数据库中更改它们,我已将此模型添加到我的项目中

public class UserAccount:IdentityDbContext<IdentityUser>{
 .....
}

但是我有以下错误;

The entity type UserAccount is not part of the model for the current context

知道如何解决这个问题.或者我可以使用Owin将默认架构从dbo更改为其他架构

解决方法

我已经解决了这个问题,你可以看到我是怎么做到的

首先,我执行了以下查询

ALTER SCHEMA User TRANSFER dbo.AspNetUsers

以及其他相关表格.

在应用程序中,我添加了带有空表集的edmx文件,并引用了下面的IdentityDbContext

public partial class LicaDatabaseEntities : IdentityDbContext<UserAccount>
{
    public LicaDatabaseEntities()
        : base("LicaDatabaseEntities")
    {
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        //throw new UnintentionalCodeFirstException();
        modelBuilder.HasDefaultSchema("User");
        base.OnModelCreating(modelBuilder);
    }

}

在初创公司

UserManagerFactory =
            () => new UserManager<UserAccount>(new UserStore<UserAccount>(new LicaDatabaseEntities()));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读