ASP.NET身份-每个类型不支持多个对象集

我在应用程序中使用ASP.NET Identity遇到错误。

每个类型不支持多个对象集。对象集“ Identity Users”和“ Users”都可以包含“ Recommendation

Platform.Models.ApplicationUser”类型的实例。

我在StackOverflow中看到了有关此错误的一些问题。全部DbSet在相同类型的两个对象上指示。但是在我DbContext里面没有相同类型的DbSetsFindAsync()登录期间在方法上引发异常。

if (ModelState.IsValid)

var user = await UserManager.FindAsync(model.UserName, model.Password);

if (user != null && user.IsConfirmed)

{

问题是我没有两个DbSets相同的类型。我的上下文如下所示:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>

{

public ApplicationDbContext()

: base("DefaultConnection")

{

}

public System.Data.Entity.DbSet<RecommendationPlatform.Models.ApplicationUser> IdentityUsers { get; set; }

}

public class RecContext : DbContext

{

public RecContext()

: base("RecConnection")

{

Database.SetInitializer<RecContext>(new DropCreateDatabaseIfModelChanges<RecContext>());

}

public DbSet<Recommendation> Recommendations { get; set; }

public DbSet<Geolocation> Geolocations { get; set; }

public DbSet<Faq> Faqs { get; set; }

public DbSet<IndexText> IndexTexts { get; set; }

}

是什么导致此问题?也许与内置的ASP.NET Identity功能有关?反正是什么Users类型?我的应用程序中没有它…

回答:

您确实有两个DbSet相同类型的。

IdentityDbContext<T>本身包含Users声明为的属性:

public DbSet<T> Users { get; set; }

您要宣布班级第二名。

以上是 ASP.NET身份-每个类型不支持多个对象集 的全部内容, 来源链接: utcz.com/qa/404973.html

回到顶部