2010-03-26 139 views
1

在ASP.NET MVC應用程序,我有以下模型到模型收藏..添加項目在ASP.NET MVC

public class EventViewModel 
{ 
public Guid Id { get; set; } 
public List<Guid> Attendants { get; set; } 
} 

傳遞給視圖...

public ActionResult Create(EventViewModel model) 
{ 
// ... 
} 

我希望能夠從View中添加到「Attendants」集合中。添加它的代碼工作得很好 - 但我如何確保View模型保留列表?有沒有辦法做到這一點,而不是保存/打開/保存等?我通過jQuery $ .load調用我的添加方法。

public void Insert(Guid attendant) 
{ 
// add the attendant to the attendees list of the model - called via $.load 
} 

我也想補充有沒有數據庫。除純文件外,沒有存儲持久性。

回答

1

如果您要發佈數據並希望重新顯示數據,則必須將數據回溯到視圖。

爲了保持多用戶數據的完整性,我通常會將數據保存到數據庫,然後在將數據傳遞迴視圖以再次顯示時再次從數據庫中檢索數據。

潛在地,您可以在視圖中執行某些AJAX-y操作來添加記錄,以便每次添加記錄時不必連續往返整個數據集。

編輯:只注意到你沒有數據庫。如果您的應用程序架構正確(即您正在使用存儲庫),則後端存儲的方法應該沒有關係。

有關添加記錄的一般實踐的更多信息,請參閱NerdDinner教程。

+0

我有知識庫。但事件ID在事件創建之前並不存在 - 因此事件文件在此之前不存在 - 但是出席者列表需要事件ID。我可以psudo-生成它,但那裏有持久性和回發問題。 – Ciel 2010-03-26 21:46:19

+0

您的ActionResult正在接受整個ViewData對象。在添加服務員之前,您是否可以根據需要創建並保留Event對象? – 2010-03-26 21:50:14

+0

每次添加服務人員時都不需要將整個頁面發回?我現在有點困惑。 – Ciel 2010-03-26 21:52:49

相關問題