2009-02-24 26 views
0

我正在設計一個ASP.NET屏幕,它配置哪些屏幕與特定類型的記錄相關。例如,一部汽車記錄可以訪問福特和法拉利的頁面。我在左邊顯示了一個列表框,其中包含所有可用的項目,右邊的列表框顯示了當前選定的項目。兩個箭頭圖標允許您將項目從左側列表框移動到右側列表框,反之亦然。ASP.NET Listboxes來更新數據

我想弄清楚存儲選定訪問的好方法。最簡單的方法是刪除當前選中的所有項目,並從「選定項目」列表框中重新插入項目。但這些更改需要更準確地審覈,因此需要單獨的插入和刪除。我是否應該將原始項目存儲在隱藏字段中,然後嘗試將最終選定項目與原始項目進行比較?應該在Presentation層中,在對象內還是在存儲過程中完成工作?

感謝您的任何指導, 院長

回答

1

我不會做它的表現層,發送新的列表,您的業務層。在那裏檢索當前列表並與新列表進行比較。你的插入和刪除的基礎上。

+0

感謝,所以我猜我會通過集合到業務層中,然後進行比較與實際值。是否有捷徑可尋?循環每個列表並與其他列表進行比較以製作插入和刪除列表? – 2009-02-24 14:40:04

0

如果您希望選擇是持久性的,您應該將它們存儲在DataLayer中。

業務層:汽車實體汽車收藏

在服務器端,您可以創建項目的集合,它包含了所有(選中/未選中)項目。

汽車實體項目需要其名稱,ID和選定的信息。當用戶進入頁面並隨時檢查它時,將該集合存儲在會話中。

這裏是一個汽車項目:

CarItem

  • 編號
  • 名稱
  • IsSelected