2015-06-27 62 views
0

我正在使用EF6。我有兩個型號PowerLine和PowerSource。 PowerSource有一個指向PowerLine的外鍵列。問題是PowerLine對象使用List of PowerSource填充,但PowerSource的SourcePowerLine導航屬性始終爲NULL。我的型號如下:非常規外鍵字段映射到EF6中的NULL

public class PowerLine 
{ 
    [Key] 
    public int ID { get; set; }          
    public virtual ICollection<PowerSource> PowerSources { get; set; }  
} 

public class PowerSource 
{ 
    [Key] 
    public int ID { get; set; }  
    public int SourcePowerLineID {get;set;} 

    [ForeignKey("SourcePowerLineID")]   
    public virtual PowerLine SourcePowerLine { get; set; }               
} 

我試着列(訂單)屬性以及設置正確的順序也是我試圖用流利的API類似如下:

 modelBuilder.Entity<PowerSource>() 
        .HasRequired(c => c.SourcePowerLine) 
        .WithMany(b => b.PowerSources) 
        .HasForeignKey(c => c.SourcePowerLineID); 
+0

不知道如果我正確地理解你的問題,但你嘗試:context.PowerSources.Include(「SourcePowerLine」) – MIKE

回答

0

[ForeingKey()]屬性不真正指向任何地方,嘗試:

[ForeignKey("PowerLine")] 
public int SourcePowerLineID { get; set; } 
+0

您的解決方案GIV es me出現以下錯誤: '附加信息:類型'power.Model.PowerSource'上屬性'SourcePowerLineID'的ForeignKeyAttribute無效。在從屬類型「power.Model.PowerSource」上找不到導航屬性「PowerLine」。名稱值應該是有效的導航屬性名稱 – user2003511