Entity framework 使用Fluent api和EntityBuilder设置ForeignKey属性<;T>;在c中#
我有以下的poco课程Entity framework 使用Fluent api和EntityBuilder设置ForeignKey属性<;T>;在c中#,entity-framework,entity-framework-core,Entity Framework,Entity Framework Core,我有以下的poco课程 public class Trader : AuditableEntity { public int AccountManagerId { get; set; } public ApplicationUser AccountManager { get; set; } } 其中,AccountManagerId是AccountManager的外键 然后在EntityFrameworkCore中设置数据时,请使用EntityTypeBuilder进行配置 p
public class Trader : AuditableEntity
{
public int AccountManagerId { get; set; }
public ApplicationUser AccountManager { get; set; }
}
其中,AccountManagerId
是AccountManager
的外键
然后在EntityFrameworkCore中设置数据时,请使用EntityTypeBuilder
进行配置
public override void Configure(EntityTypeBuilder<Trader> entity)
{
entity.HasKey(x => x.Id);
...
public override void Configure(EntityTypeBuilder实体)
{
entity.HasKey(x=>x.Id);
...
如何使用Fluent API才能声明AccountManager.HasForeignKey(AccountManagerId)
,因为我看不出如何做到这一点
ApplicationUser
没有对交易员的引用,这是一种单向关系。对于1-N关系:
entity.HasOne(x => x.AccountManager).WithMany().HasForeignKey(x => x.AccountManagerId);
entity.HasOne(x => x.AccountManager).WithOne().HasForignKey<Trader>(x => x.AccountManagerId);
对于1-1关系:
entity.HasOne(x => x.AccountManager).WithMany().HasForeignKey(x => x.AccountManagerId);
entity.HasOne(x => x.AccountManager).WithOne().HasForignKey<Trader>(x => x.AccountManagerId);
entity.HasOne(x=>x.AccountManager).WithOne().HasForignKey(x=>x.AccountManagerId);