2011-02-16 97 views
4

在Visual Studio 2010中使用EF3.5(此時無法升級到EF4 - 不要問!)。實體框架3.5和存儲過程結果映射

想要創建一個存儲過程,該過程從一些相關表中彙總某些字段並將存儲過程的結果實現爲自定義「實體」。這個自定義實體將是「只讀」。我設置了自定義實體,存儲過程和函數導入。當我建立我的實體項目中,我得到如下:

錯誤35錯誤3027:
以下 的EntitySet/AssociationSet沒有指定映射 - MyCustomEntitySet

看起來它想要一個爲我的自定義實體定義的表映射,然而,在這種情況下,我不會有這種情況,因爲它將數據聚合在多個表上(並過濾掉一些不需要的數據)。

是否可以將自定義實體映射到存儲過程?是否有可能以「從數據庫更新模型」功能不會破壞自定義實體或存儲過程/函數導入映射的方式執行此操作?

TIA!

回答

3

我們曾經通過在db中創建一個視圖來解決這個問題 - 如果映射到存儲過程,視圖永遠不會實際使用,但它確實能夠在實體中自動創建正確的映射。

通常,對於相當簡單的proc,您可以複製/粘貼sql以生成視圖 - 節省一些時間。

+0

是的,這是我們一直在使用的解決方法。想知道是否沒有更多的「支持」。例如,這看起來很有希望,但是,我無法讓它爲我工作:http://dotnet.dzone.com/news/mapping-stored-procedure – Brian 2011-02-16 05:13:00

相關問題