2009-10-13 57 views
0

只是想弄清楚如何實現以下內容:如何在編輯表單中使用SelectList更新實體引用? (asp.net mvc)

我有一個編輯窗體和一個簡單的viewmodel爲所述窗體。 viewmodel包含一個實體,然後包含一些SelectLists用於下拉菜單。

問題是這樣的: 有問題的實體有一個相關的實體(稱爲空間)。我希望用戶能夠從下拉列表中選擇不同的房間,並相應地更改此相關實體。

我不能只將RoomID設置爲一個新值,實體框架不公開它。如果我嘗試UpdateModel失敗。

那麼,是否可以通過編輯表單更新實體引用?

由於提前

(開始希望我使用LINQ到SQL)

(編輯爲清楚起見)

+0

您需要縮小問題範圍。您的問題實際上是「如何更新EF中的實體參考」? – bzlm 2009-10-13 11:32:24

+0

是啊我想這比我的問題更準確,但它應該可能是'我如何通過選擇列表更新在EF中的實體引用' – Sergio 2009-10-13 11:34:57

+0

切換到LINQ到SQL,我只是直接更新外鍵。我認爲更直觀的方法。滾上EF4 ... – Sergio 2009-10-13 12:19:53

回答

0

我們通過剛剛更新ID(做多或更低;我們使用演示模型,而不是我們的觀點結合直接向實體,但你的想法...):

SomeEntity.SomeOtherEntityReference.EntityKey = 
    new EntityKey("MyEntities.SomeOtherEntities", "Id", 
     presentationModel.SomeOtherEntityId); 

EF 4使這更優雅,是的,但你肯定能做到在EF 1,以及。

相關問題