2011-08-24 65 views
0

我的數據庫中有一個存儲過程,它爲一些用戶返回一組數據。自然,userId作爲這個集合的一部分返回。我已經將存儲過程導入到實體框架模型中,並創建了一個新的複雜類型來存儲結果。是否可以將存儲過程列映射回EF4中的實體?

List<GetUserData_Result> x = context.GetUserData().ToList(); 
List<int> userids = x.Select(u => u.UserId); 

是否有任何方法將我的複雜類型中的userId與已存在的用戶實體相關聯?這可以讓我說出類似result.User.EmailAddress的東西,即使電子郵件地址沒有被我的存儲過程返回? MSDN上的許多戳記表明,使用AssociationAttribute類可能會有這種可能,但我至今無法找到一個示例。

回答

0

這將是很好的功能,但目前的版本不提供此功能。複雜類型不能具有導航屬性(所以它不能指向實體)。這意味着EF不會爲你做這件事,但你可以擁有自己的財產,它會以某種方式讓用戶使用該ID並返回它 - 很可能這會使你的複雜類型依賴於ObjectContext,這是不好的。

AssociationAttribute根本沒有被Entity框架使用。它用於WCF RIA服務。

相關問題