2009-07-13 51 views
5

我想使用模型綁定,以保持我的控制器尋找更清潔,你可以看到它是如何好得多使用模型綁定:怎麼辦模型使用jQuery阿賈克斯綁定

public ActionResult Create(Person personToCreate) 
{ 
    //Create person here 
} 

VS

public ActionResult Create(string firstName, string lastName, string address, string phoneNum, string email, string postalCode, string city, string province, string country) 
{ 
    //Create person here 
} 

在做模型的結合,我們可以只使用一個形式在Html.TextBox("")

什麼jQuery的正確的名稱?我如何確保在執行$.post(url, data, callback, dataType)$.ajax(options)呼叫Create(Person personToCreate)時Person對象被正確填充?

回答

4

您需要:

  1. 使屬性的名稱在數據綁定的匹配類型名稱的參數/屬性。
  2. 始終爲綁定類型的所有非空值參數/屬性提供值。

對於綁定到人的行爲可能與爲每個屬性指定個別動作參數不同的原因而言,第2號是最大的一個。如果您有一個名爲「Foo」的非空屬性的類型,則未能在表單中提供foo項目將阻止綁定。

+0

解決這個問題的唯一方法是自定義模型綁定器? – Matt 2009-07-13 20:49:23