C# 实体类型ApplicationUser不是当前上下文模型的一部分。更新的EDMX
我首先使用DB和EF。。我的数据库已经存在,因此我已跟踪。。特别是臭味的回答 我已经将这些表编写到我已经存在的数据库中 因此,现在在我的C# 实体类型ApplicationUser不是当前上下文模型的一部分。更新的EDMX,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我首先使用DB和EF。。我的数据库已经存在,因此我已跟踪。。特别是臭味的回答 我已经将这些表编写到我已经存在的数据库中 因此,现在在我的web.config中,我有以下内容: <connectionStrings> <!--<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspn
web.config
中,我有以下内容:
<connectionStrings>
<!--<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-test-20170522025552.mdf;Initial Catalog=aspnet-test-20170522025552;Integrated Security=True" providerName="System.Data.SqlClient" />-->
<add name="FakeExistingDBConnectionString" connectionString="xxxxxxxxxxxxxxx;user id=fake_user;password=fakeUser12;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
<appSettings>
当我尝试注册用户时。。我明白了:
实体类型ApplicationUser不是当前上下文模型的一部分
我只是想说清楚。。我的现有数据库确实包含aspnetroles
,aspnetuserclaims
,aspnetuserlogins
,aspnetuserroles
,aspnetusers
表
我该如何解决这个问题
更新
整个连接字符串:
<add name="DatabaseNameEntities" connectionString="metadata=res://*/Models.EntityDataModelName.csdl|res://*/Models.EntityDataModelName.ssdl|res://*/Models.EntityDataModelName.msl;provider=System.Data.SqlClient;provider connection string="data source=serverName;initial catalog=databaseName;user id=fake_user;password=fakePassword;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
假设这是EF EDMX连接字符串:
<add name="FakeExistingDBConnectionString" connectionString="xxxxxxxxxxxxxxx;user id=fake_user;password=fakeUser12;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
public ApplicationDbContext()
: base("FakeExistingDBConnectionString", throwIfV1Schema: false)
{
}
EDMX的另一个连接字符串:
<connectionStrings>
<add name="FakeExistingDBConnectionEntities" connectionString="metadata=res://*/Models.ModelName.csdl|res://*/Models.ModelName.ssdl|res://*/Models.ModelName.msl;provider=System.Data.SqlClient;provider connection string="xxxxxxxxxxxxxxx;user id=fake_user;password=fakeUser12;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
然后,更新EDMX并确保您可以管理用户(创建、登录、更新、密码重置等)
类似问题:
假设这是EF EDMX连接字符串:
<add name="FakeExistingDBConnectionString" connectionString="xxxxxxxxxxxxxxx;user id=fake_user;password=fakeUser12;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
public ApplicationDbContext()
: base("FakeExistingDBConnectionString", throwIfV1Schema: false)
{
}
EDMX的另一个连接字符串:
<connectionStrings>
<add name="FakeExistingDBConnectionEntities" connectionString="metadata=res://*/Models.ModelName.csdl|res://*/Models.ModelName.ssdl|res://*/Models.ModelName.msl;provider=System.Data.SqlClient;provider connection string="xxxxxxxxxxxxxxx;user id=fake_user;password=fakeUser12;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
然后,更新EDMX并确保您可以管理用户(创建、登录、更新、密码重置等)
类似问题:
右键单击EDMX,确保更新了它。否则,请参见。@SteveGreene我已从数据库中更新了我的EDMX,但它仍然给出相同的错误。请确保右键单击它来更新您的EDMX。否则,请参见。@SteveGreene我已经从数据库更新了我的EDMX,但它仍然给出相同的错误。所以我只需要添加一个没有EF的额外连接字符串?请看我的解释。谢谢@Tetsuya Yamamoto所以我只需要添加一个没有EF的额外连接字符串?请看我的解释。谢谢你@Tetsuya Yamamoto
public ApplicationDbContext()
: base("FakeExistingDBConnectionString", throwIfV1Schema: false)
{
}