簡體   English   中英

EF-相關實體未加載

[英]EF - related entity not loading

我有一個用於存儲所有靜態數據的相關實體。 問題是,當我創建一個新實體時,相關實體始終為null。 從數據庫中提取數據時沒有問題-我可以很好地訪問相關實體。

如果重要的話,請使用EF 6.0首先建模。

我嘗試使用.include,並且在保存后也重新獲取,但是它不起作用。 我確定這很簡單,我很想念...有什么幫助嗎? TIA

...
using (var db = new dbContext1())
{            
    Customer c = new Customer();
    c.id = this.id;
    db.Customer.Add(c);
    db.SaveChanges();

    for (int i = 1; i <= c.CustomerProperties.initialAllotment; i++)
    {
        //do stuff
    }
}

在客戶類中:

public int id { get; set; }    
public virtual CustomerProperties CustomerProperties { get; set; }

如果僅添加並保存更改,則不會設置CustomerProperties那么實體框架將不會對其進行神奇設置。 您必須從db加載這些靜態屬性,並將其添加到Customer ,然后保存。

看來您尚未實例化CustomerProperties類的實例。 我可以想象在db.SaveChanges();之前使用它db.SaveChanges(); 將解決您的問題。

 c.CustomerProperties = new CustomerProperties();

另外,使用CustomerProperties作為類的名稱和屬性的名稱可能會導致一些問題。

我建議改用這個:

 public int id { get; set; }    
 public virtual CustomerProperties customerProperties { get; set; }

請注意,將屬性名稱從Pascal Case更改為Camel Case

請參閱: 屬性命名准則

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM