2009-07-28 63 views
2

我們正在調查使用RIA服務(7月09日預覽)來公開部分現有EF模型。我們已經向我們的Web應用程序添加了一個域服務類,並指定了EF模型以使用並選擇了一些我們希望通過域服務提供的實體(一些已啓用編輯,但大部分不啓用)。向實體框架支持的域服務添加其他實體

我們構建並且一切都很好,但是如果我們想向域服務添加一個額外的實體,我們該如何做。是否刪除您當前的課程並重新添加,並且在RIA Services遇到RTM時這個漏洞會被插入?

回答

1

我同意,每次數據庫更改時手動鍵入所有內容都很煩人。我最終要做的是創建一個新的臨時域服務類(和元數據),並將代碼粘貼到現有域服務中,然後從項目中刪除臨時服務。


另一個選項即可(沒有嘗試),以使生成的文件的部分類,把所有的新查詢到一個單獨的文件,每次DB模式更改只是吹走生成的文件和使用嚮導重新創建它。只是一個想法

0

您可以添加新實體的代碼...只需添加正確的方法,查詢,並根據您需要的操作,插入,更新,刪除和自定義操作。

Yoiu不應該刪除你當前的類,理論上它包含了一堆有趣的應用程序邏輯(我想象),只是因爲你想添加一個實體。

+1

我真的希望能夠做的是再次打開向導,並添加從我的模型到服務的其他實體,並使其在服務中浮出水面。 – 2009-09-01 07:55:06

0

我對這個問題的解決方案是創建一個代碼片段,完成大部分工作。

我只需要鍵入efdsmethods,選項卡兩次,並替換要使用的方法的EntitySet名稱,EntityType名稱和實體變量,然後完成。它使得添加4種標準方法非常簡單。

我已將代碼片段(#10154)提交到codeplex上的Silverlight Contrib project,但尚未被接受。在那之前你可以download the snippet from here

希望這可以幫助你。