Asp.net MVC Identity无法使用Database approch创建表

时间:2017-05-29 19:56:43

标签: c# sql-server asp.net-mvc asp.net-mvc-4 entity-framework-4

我正在使用MVC 5和sql server 2012.I创建了名为TestDB的DB,其doest不包含任何table.Now我正在尝试使用在MVC项目中的AccountController中默认给出的Identity。我已将AccountController “Defaultconnection”更改为我的 TestDBEntities 连接但我收到错误 System.InvalidOperationException:实体类型ApplicationUser不是当前上下文模型的一部分。我如何使用现有数据库创建标识。

  <connectionStrings>
  <add name="TestDBEntities" connectionString="metadata=res://*/DAL.TestModel1.csdl|res://*/DAL.TestModel1.ssdl|res://*/DAL.TestModel1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=xxxxx;initial catalog=TestDB;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

  public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{

    public ApplicationDbContext()
        : base("TestDBEntities", throwIfV1Schema: false)
    {
    }

    public static ApplicationDbContext Create()
    {
        return new ApplicationDbContext();
    }
}

1 个答案:

答案 0 :(得分:0)

根据我的理解,解决问题的可能方法是:

1.已将ApplicationDbContext添加到UserStore构造函数的交叉检查

例如: https://stackoverflow.com/a/23894335/3397630

2.还要检查webconfig文件中是否有任何其他连接字符串。这也可能导致问题。

如果以上两点都不起作用,请遵循以下文章:

http://www.codeguru.com/csharp/.net/net_asp/mvc/securing-asp.net-mvc-applications-with-asp.net-identity.htm

非常好,我亲自使用并为我的项目创建了一个身份表,没有任何问题。

在文章中,每个点都有解释,每个点都很好,易于理解。

希望以上信息有用,请告诉我您的想法或反馈

由于

KARTHIK