我剛開始學習實體框架,我面臨着與生成模型序列化相關的問題。我有一個國家和國家一對多關係的表格,因爲一個國家有許多國家。我使用數據庫優先的方法,當我使用實體框架創建實體時,類Country具有ICollection的一個屬性。我閱讀並發現這是導航屬性。讓我先顯示下面生成的類:如何在實體框架中使用延遲加載來序列化實體?
//這是生成的類。
public class Country
{
public Country()
{
States = new HashSet<States>();
}
public int Id { get; set; }
public string ContryCode { get; set; }
public string ContryName { get; set; }
public virtual ICollection<States> States{ get; set; }
}
我生成的模型,然後我一步轉發。然後,當我通過ajax獲取國家/地區名單時,我遇到了序列化問題。我搜索了一下,發現了一些術語,如懶加載,急切加載和n + 1問題。我詳細閱讀了它。我找到了一個關閉延遲加載的解決方案。現在的問題是如何我可以序列化我的模型與延遲加載?
我已經創建了MetaData類並使用了像ignoreXml等一些屬性,但沒有任何幫助。順便說一下,我使用Asp.Net MVC 5,我想用惰性加載序列化我的模型。任何人都可以解釋嗎?
我可以在一些批處理或者爲什麼延遲加載希望胖客戶端應用程序理解。但是,對於延遲加載更適合的Web應用程序,您有什麼用例(除了不想考慮包含哪些內容)呢? –
@KyleBurns我沒有任何用例。但是我想知道如果我們在任何情況下使用延遲加載。那麼我們如何序列化模型? – Umer
你是否收到「上下文處置」錯誤? – JuanR