2009-05-06 89 views
1

當我試圖挽救實體我得到一個錯誤:當我試圖挽救實體我得到的錯誤:對象引用不設置到對象的實例

Object reference not set to an instance of an object

我能創造一個新的實體,代碼幾乎相同。

當我試圖挽救我能夠追蹤位代碼 我的控制器代碼的實體看起來是這樣的:

_entities.Kandidaats.Attach(kandidaatBewerken,true); 
    _entities.SubmitChanges(); 
    return RedirectToAction("Index"); 

當我跟蹤代碼,我看到我的kandidaatBewerken持有權數據,在第一行,其後的跟蹤可以追溯到我的視圖代碼,並提供了有關第二行錯誤:

<% using (Html.BeginForm()) {%> 
<%= Html.TextBox("KandidaatId", Model.KandidaatId)%> 

當我跟蹤它,它說,我的型號是空的,而只是一個處理在這之前,它被填滿。

爲什麼我得到這個錯誤,我該如何前進?

+1

請允許我在代碼中使用非英文單詞的offtopic註釋是一個非常糟糕的做法除非它是你自己的小項目,你永遠不會期望與任何人分享。 – User 2009-05-06 16:09:29

回答

1

我要在這裏想..因爲沒有一大堆的代碼去..

但「索引」視圖中創建一個表單編輯您的Kandidaat對象...

但是,您將用戶重定向到沒有填充模型的表單(這就是爲什麼第二行會引發錯誤。模型爲空,並且您正在對空對象調用屬性)。

嘗試:

return RedirectToAction("Index", kandidaatBewerken); 

但是,將帶你回到形式(這可能是你期望的結果)。我將採取用戶返回到任何行動所產生的列表,或另一條路線。 ..

return RedirectToAction("List"); 

return RedirectToRoute("Home"); 
+0

我現在發現問題的一部分,Kandidaat模型的格式不正確,這就是爲什麼它回到我的觀點,但沒有正確的viewdata – Michael 2009-05-12 11:02:47

相關問題