2014-07-23 76 views
0

對不起,它太長,但你可以看到實際問題得到的問題。向MVC添加動態控件並在控制器中獲取它們的值

背景: 它是一種e-commerce項目中,我讓客戶端添加任意數量根據該類別和子類別。對於每個類別,客戶將自己創建一些屬性。假設客戶端創建一個類別Mobile Phones和這一類被添加到Category表,然後他帶來了一些屬性,該屬性類別像PriceBrand等等,所有這些屬性插入AttributesCategoryIdCategories表的主鍵)。迄今已完成。

雖然客戶添加特定類別的產品,例如在我們的Mobile Phones的類別和用於保存產品我有Products表。產品表最初沒有列PriceBrand,但它們將在客戶端創建屬性時創建,因此在開發時我不知道所有這些列。

在創建一個屬性的客戶端也將填補有關即

  1. 屬性的名稱
  2. 顯示名稱
  3. 服務器控件像TextBoxDropdown
  4. 驗證該屬性的一些信息

實際P roblem:

看上面的故事,我們知道我們可能有任何數量的任何類別的屬性,這些屬性將有Server Control相關聯。在添加產品的同時在視圖中添加這些控件時,我們需要動態添加關聯的控件,而不是HTML或Razor。我們可以在MVC中做到這一點嗎?如果是,那麼如何?

謝謝。

+0

您是否像我們在傳統的asp.net中添加服務器控件? –

+0

@KartikeyaKhosla正是先生。 – Imad

+0

您可以編寫一個customhtmlhelper同樣的 –

回答

1

您可以在控制器的操作中使用Dictionary或數組作爲參數。在視圖中,你只需要,如果他們數組名稱的所有輸入:

<input type="text" name="data[1]" > 
<input type="text" name="data[2]" > 

這裏有一個例子:http://www.quickstepit.net/mvc-3-model-binding-array/

同樣的事情會發生的選擇。

相關問題