2013-05-21 62 views
0

我正在EF5代碼優先數據庫上工作,它給我一個外鍵很麻煩。如果這個問題已經在別的地方得到解答,也很抱歉,但是我已經看到了無數的問題,而且迄今爲止還沒有任何幫助。實體框架5不加載屬性

我有這樣的用戶類

public class User 
{ 
    [Key()] 
    [HiddenInput(DisplayValue=false)] 
    public int UserId { get; set; } 

    [Required] 
    public string Username { get; set; } 

    [Required] 
    [DataType(DataType.Password)] 
    public string Password { get; set; } 

    [ScaffoldColumn(false)] 
    public CustomClass Custom { get; set; } 
} 

而這種定製類

public class CustomClass 
{ 
    [Key()] 
    [HiddenInput(DisplayValue = false)] 
    public int CustomClassId { get; set; } 

    [Required] 
    public string Name { get; set; } 
} 

這DataContext的現在

public class SilkDbContext3 : DbContext 
{ 
    public DbSet<User> Users { get; set; } 
    public DbSet<CustomClass> CustomClasses { get; set; } 
} 

,問題是,我可以完全節省PoseAnimation通過控制器。我還可以使用基本屬性(用戶名,密碼)發佈和更新用戶,但是當向用戶添加自定義類時,會將其保存爲數據庫行中的外鍵,但是當我想要檢索用戶時, dbcontext只是給了我自定義類的null(無論我是通過GET還是intellisense進行檢索)。有人可以幫我從這裏出去嗎?

回答

0

如果您使用延遲加載,則需要明確或eagerly加載相關數據,或者將Custom屬性標記爲虛擬。