2011-07-18 41 views
0

我需要創建幾個SQL Server的表聯盟的模式,我得如何建立像SQL Server視圖一個EF數據模型

插入,選擇,更新的能力,刪除...

(id like to use the model as same as any other model) 

有什麼建議嗎?

感謝您的閱讀。

編輯:我試過SQL Server視圖,但得到的休耕錯誤,當我想插入到SQL Server視圖:

消息4406,級別16,狀態1,行 更新或視圖或函數插入「 viewName'失敗,因爲它包含派生或常量字段。

回答

1

您需要爲插入,更新和刪除創建數據庫視圖+存儲過程。您將視圖映射爲新實體,並將導入的存儲過程映射到該實體的插入,更新和刪除操作。

實際上您不需要數據庫視圖 - 您可以使用DefiningQuery將查詢直接寫入EDMX,但需要手動修改EDMX。再次運行「從數據庫更新」後,默認的EF工具將刪除手動修改。

即使定義了查詢,您仍然需要這些存儲過程。沒有其他方法可以基於定義查詢來實體化(視圖也被導入爲定義查詢)可更新。

+0

:更新或插入視圖或函數'viewName'失敗,因爲它包含派生或常量字段。 Thanx – Mohsen

+0

你不能更新視圖,你必須直接更新表 - 這就是爲什麼你需要這些存儲過程。他們必須實現一個邏輯,以瞭解用於構建視圖的表中的記錄必須更新,插入或刪除。 –

相關問題