Entity framework 使用Fluent api和EntityBuilder设置ForeignKey属性<;T>;在c中#

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

我有以下的poco课程

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);