-
这个
ProgramUsers
类需要一个
ProgramId
属性和
Program
引用属性。
-
这个
程序
需要一个
程序用户
集合导航属性。
using System.ComponentModel.DataAnnotations.Schema;
public class ProgramUsers
{
public int Id { get; set; }
public string Username { get; set; }
[ForeignKey("Program")]
public int ProgramId { get; set; }
public Program Program { get; set; }
}
public class Program
{
public int Id { get; set; }
[Column("Program")]
public string ProgramName { get; set; }
public ICollection<ProgramUser> ProgramUsers { get; set; }
}
在中配置
Fluent API
如果您正在使用实体框架核心:
modelBuilder.Entity<ProgramUser>()
.HasRequired<Program>(x => x.Program)
.WithMany(g => g.ProgramUsers)
.HasForeignKey<int>(x => x.ProgramId);
并获取的相关实体
程序用户
在查询中,假设您正试图通过程序名称获取程序用户:
var programUsers = context.ProgramUsers
.Include(x => x.Program)
.Where(b => b.Program.ProgramName == clientInput.Program)
.ToList();
参考:
Data Annotations - ForeignKey Attribute in EF 6 & EF Core