ASP.. NET Core MVC:如何使用实体框架将实体绑定到特定的用户



我知道我的问题有点宽泛,但我在网上没有找到任何好的答案。

我正在建立一个ASP。我正在寻找有关如何将特定用户绑定到实体(模型中的类)的提示。这个问题实际上是关于如何将某个用户绑定到数据库中的某个实体。

任何帮助都将是非常感激的。

ApplicationUser(或IdentityUser)与任何其他实体类一样。

例如,创建一个1-n的关系,看起来像这样:
public class ApplicationUser : IdentityUser
{
public virtual IList<MyEntity> MyEntities { get; set; } // navigation property
}
public class MyEntity
{
public int Id { get; set; }
public string CreatedByUserId { get; set; }        // FK
public ApplicationUser CreatedByUser { get; set; } // Navigation property
}

你也可以这样做:

public class ApplicationUser : IdentityUser { }
public class MyEntity
{
public int Id { get; set; }
public string CreatedByUserId { get; set; }
}
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<MyEntity>(b => {
b.HasOne<ApplicationUser>()
.WithMany()
.HasForeignKey(myEntity => myEntity.CreatedByUser);
});
}
}