C# 实体框架从一到多的单向关联

C# 实体框架从一到多的单向关联,c#,entity-framework,associations,one-to-many,C#,Entity Framework,Associations,One To Many,我有一个Account类,它将用于指示谁对某个实体负责。将有许多实体使用它,所以我不想用所有这些集合污染我的Account类 public class Account { public Guid Id{get; set;} public Guid Name{get; set;} ... public class EntityConfiguration : EntityConfigurationBase<Account> { publi

我有一个Account类,它将用于指示谁对某个实体负责。将有许多实体使用它,所以我不想用所有这些集合污染我的Account类

public class Account
{
   public Guid Id{get; set;}
   public Guid Name{get; set;}
   ...
   public class EntityConfiguration : EntityConfigurationBase<Account>
   {   
       public EntityConfiguration()
       {
           // I do not want these!
           HasMany(a => a.As)   
              .WithOptional(x => x.Account)
              .HasForeignKey(x =>x.AccountKey);
            }
        }
    }
}


public class A 
{
   public Guid Id {get; set;}
   public Account Account{get; set;}
   // FK-Nav property
   public Guid AccountKey{get;set;}
   public class EntityConfiguration : EntityConfigurationBase<A>
   {   
       public EntityConfiguration()
       {
           // what should go here to specify the association to Account?
           ????
        }
    }
}

public class B 
{
   public Guid Id {get; set;}
   public Account Account{get; set;}
   // FK-Nav property
   public Guid AccountKey{get;set;}
      public class EntityConfiguration : EntityConfigurationBase<B>
   {   
       public EntityConfiguration()
       {
           // what should go here to specify the association to Account?
           ????
        }
    }

}

etc.
公共类帐户
{
公共Guid Id{get;set;}
公共Guid名称{get;set;}
...
公共类EntityConfiguration:EntityConfiguration库
{   
公共实体配置()
{
//我不要这些!
HasMany(a=>a.As)
.WithOptional(x=>x.Account)
.HasForeignKey(x=>x.AccountKey);
}
}
}
}
公共A类
{
公共Guid Id{get;set;}
公共帐户{get;set;}
//FK导航属性
公共Guid AccountKey{get;set;}
公共类EntityConfiguration:EntityConfiguration库
{   
公共实体配置()
{
//应该在此处指定与帐户的关联?
????
}
}
}
公共B级
{
公共Guid Id{get;set;}
公共帐户{get;set;}
//FK导航属性
公共Guid AccountKey{get;set;}
公共类EntityConfiguration:EntityConfiguration库
{   
公共实体配置()
{
//应该在此处指定与帐户的关联?
????
}
}
}
等
公共A类
{
公共Guid Id{get;set;}
公共帐户{get;set;}
//FK导航属性
公共Guid AccountKey{get;set;}
公共类EntityConfiguration:EntityConfiguration库
{   
公共实体配置()
{
HasOptional(x=>x.Account).HasMany().HasForeignKey(x=>x.AccountKey);
}
}
}

不确定是否合适,但您是否考虑过自定义代码优先约定@科林:我认为这些还没有出现在我的E.F.版本中。我正在使用5.0和.NET4.5(VisualStudio2010)
public class A 
{
   public Guid Id {get; set;}

   public Account Account{get; set;}
   // FK-Nav property
   public Guid AccountKey{get;set;}
   public class EntityConfiguration : EntityConfigurationBase<A>
   {   
       public EntityConfiguration()
       {

           HasOptional(x => x.Account).HasMany().HasForeignKey(x=>x.AccountKey);
        }
    }
}