我在開始一個新項目,創造我只是用普通的舊CLR對象,而不是任何的ORM的業務對象和數據訪問等的過程lazying加載。我創建了兩個類庫: 1)Business Objects - 擁有我所有的業務對象,所有這些對象的重量都很輕,只有屬性和業務規則。 2)存儲庫 - 這是爲我所有的數據訪問。Repository模式使用POCO
我的大部分對象將在子列表,我的問題是什麼是延遲加載這些值,因爲我不想帶回不必要的信息,如果我不需要的最佳途徑。
我想到了用「得到」的子屬性,以檢查其是否「空」時,關於如果是叫我的資料庫,以獲得孩子的信息。這有兩個問題,我可以看到: 1)對象「知道」如何獲得自己我寧願沒有數據訪問邏輯被保存在對象中。 2)這需要兩個類互相引用,在Visual Studio中引發循環依賴錯誤。
有沒有人對如何克服這個問題,或者我的項目佈局的建議任何建議,它可以改善?
感謝