gpt4 book ai didi

entity-framework - IdentityUserLogin' 需要在添加迁移时定义主键错误

转载 作者:行者123 更新时间:2023-12-03 05:45:02 25 4
gpt4 key购买 nike

我正在使用 2 个不同的 Dbcontext。我想使用 2 个不同的数据库用户和 mycontext。执行此操作时,我收到错误实体类型“Microsoft.AspNetCore.Identity.EntityFrameworkCore.IdentityUserLogin”需要定义主键。我认为 IdentityUser 有问题,请建议我在哪里可以更改我的代码,以便我可以添加迁移。

我的 Dbcontext 类:

 class MyContext : DbContext
{
public DbSet<Post> Posts { get; set; }
public DbSet<Tag> Tags { get; set; }

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);

modelBuilder.Entity<PostTag>()
.HasKey(t => new { t.PostId, t.TagId });

modelBuilder.Entity<PostTag>()
.HasOne(pt => pt.Post)
.WithMany(p => p.PostTags)
.HasForeignKey(pt => pt.PostId);

modelBuilder.Entity<PostTag>()
.HasOne(pt => pt.Tag)
.WithMany(t => t.PostTags)
.HasForeignKey(pt => pt.TagId);
}
}

public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public AppUser User {get; set;}
public string Content { get; set; }

public List<PostTag> PostTags { get; set; }
}

public class Tag
{
public string TagId { get; set; }

public List<PostTag> PostTags { get; set; }
}

public class PostTag
{
public int PostId { get; set; }
public Post Post { get; set; }

public string TagId { get; set; }
public Tag Tag { get; set; }
}

和AppUser类:

public class AppUser : IdentityUser
{
//some other propeties
}

当我尝试添加迁移时,出现以下错误。

The entity type 'Microsoft.AspNetCore.Identity.EntityFrameworkCore.IdentityUserLogin<string>' requires a primary key to be defined.

给我解决问题的方法..

最佳答案

减少link简而言之,试试这个:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);

...

请参阅上面的链接了解更多信息。

关于entity-framework - IdentityUserLogin<string>' 需要在添加迁移时定义主键错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39798317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com