2012-03-08 52 views
1

在實體框架許多參考在功能NHibernate我可以映射多個實體引用1-M作爲INT ID的列表:映射一個作爲ID的集合,而不是實際的實體引用

public class User{ 
    List<int> LicensesIds{ 
     get; 
     set; 
    } 

代替

Public class User{ 
ICollectoin<License> Licenses{ 
    get; 
    set; 
} 
} 

Entity Framework如何映射它。 在流暢的映射中,當我查詢數據庫時,我得到了一個id列表而不是實體列表。

Is there away我可以在Entity Framework中以相同的方式映射它嗎?

我需要它的原因是因爲我正在使用存儲庫模式併爲域中的每個實體創建了一個存儲庫:存儲庫和我不想定義查詢時使用實體查詢和獲取什麼關係DB通過使用LINQ或在屬性調用的中間使用懶惰綁定,但我並不知道此屬性調用現在將從數據庫中獲取數據。 我想通過查詢相關存儲庫手動帶入實體。

THX,

詹姆斯

回答

1

這是不可能的。如果您希望EF爲您處理加載(您可以將第二個屬性僅投影到整數列表中),那麼您必須始終擁有實體中的許可證列表。如果你只想在你的倉庫中使用int實現自定義邏輯的列表,它將執行額外的查詢並填充它。

相關問題