entity-framework - ASP.NET Core MVC:如何使用实体框架将实体绑定到特定用户
问题描述
我知道我的问题有点宽泛,但我在网上没有找到任何好的答案。
我正在构建一个 ASP.NET Core MVC Web 应用程序。我正在寻找有关如何将特定用户绑定到实体(模型中的类)的提示。问题实际上是关于如何将某个用户绑定到数据库中的某个实体。
任何帮助将不胜感激。
解决方案
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);
});
}
}
推荐阅读
- laravel - 在 lumen 中,如何在 trait 中调用另一个 trait 的函数
- angular - 将用户对象存储在 localstroage 中是否合适?
- asp.net - Telerik Kendo MVC 调度程序 - 无法移动事件
- php - /wp-admin/admin.php? 给出 404 错误
- php - PHPUnit:有没有像“assertExistsNotNull”这样的东西?
- javascript - Spring注释@RequestParam与带有类型按钮标签的HTML输入一起使用?
- java - Synth Look and Feel - 是否可以编写 xml 来进行一般定制和指定定制?
- azure - 我们如何使用我们的代码发布动态生成的应用服务
- php - 数据库 Codeigniter 查询
- c - 在 C 中将函数参数声明为 const