Entity framework 在实体框架代码优先方法中为现有AspNetUsers表创建模型
我正在开发一个Asp.NETMVC5项目。我使用实体框架代码优先的方法与数据库交互。我使用身份系统进行用户身份验证。但是我在将身份系统中的AspNetUsers表集成到我的模型中时遇到了一个问题。我的标识系统数据库上下文和模型数据库上下文类不同,因为我使用的是内置的包含标识系统 但连接字符串是相同的。两者都使用默认的连接字符串。但模型在不同的项目中。现在我在项目的中间。我已经用数据库中的表映射了现有的模型类。我从UI创建了一个用户帐户,所以identity system所需的表(包括AspNetUsers表)将自动迁移。现在我想创建一个模型类来映射AspNetUsers表,因为我想在该AspNetUsers表和一个现有表之间创建关系。因此,我在模型项目中创建了一个名为“AspNetUser”的模型类。然后,我根据数据库中的AspNetUsers表为该类创建了属性。然后为我的模型添加迁移和更新数据库。它给了我以下的错误Entity framework 在实体框架代码优先方法中为现有AspNetUsers表创建模型,entity-framework,ef-code-first,migration,asp.net-identity,entity-framework-migrations,Entity Framework,Ef Code First,Migration,Asp.net Identity,Entity Framework Migrations,我正在开发一个Asp.NETMVC5项目。我使用实体框架代码优先的方法与数据库交互。我使用身份系统进行用户身份验证。但是我在将身份系统中的AspNetUsers表集成到我的模型中时遇到了一个问题。我的标识系统数据库上下文和模型数据库上下文类不同,因为我使用的是内置的包含标识系统 但连接字符串是相同的。两者都使用默认的连接字符串。但模型在不同的项目中。现在我在项目的中间。我已经用数据库中的表映射了现有的模型类。我从UI创建了一个用户帐户,所以identity system所需的表(包括AspNet
There is already an object named 'AspNetUsers' in the database.
我能想到的是删除AspNetUsers表并更新数据库。但若我删除它,我必须删除identity system所需的其他表,因为它们具有FK关系。我不想要它。我能想到的第二种方法是删除标识系统所需的所有表。然后迁移AspNetUser模型类。然后删除该类并从UI注册新帐户。因此,将再次创建标识系统所需的所有表
第二种方法也是,我必须删除表并发生数据丢失。如何覆盖现有的AspNetUsers表进行迁移?可能吗?将AspNetUsers表集成到我的模型中的最佳方法是什么
这是迁移文件夹中的配置类
internal sealed class Configuration : DbMigrationsConfiguration<PatheinFashionStore.Domain.Concrete.StoreContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
}
protected override void Seed(PatheinFashionStore.Domain.Concrete.StoreContext context)
{
}
}
内部密封类配置:dbmigtorinsconfiguration
{
公共配置()
{
AutomaticMiggerationsEnabled=真;
AutomaticMigrationDataLossAllowed=true;
}
受保护的覆盖无效种子(PatheinFashionStore.Domain.Concrete.StoreContext上下文)
{
}
}
这是我的上下文初始化器类
public class ContextInitializer : System.Data.Entity.CreateDatabaseIfNotExists<StoreContext>
{
protected override void Seed(StoreContext context)
{
}
}
公共类上下文初始值设定项:System.Data.Entity.CreateDatabaseIfNotExists
{
受保护的覆盖无效种子(StoreContext上下文)
{
}
}
如果不可能,最好的方法是什么?只需从IdentityDbContext继承您的上下文即可。只需从IdentityDbContext继承您的上下文即可。