Come fare Binding Modello con jQuery Ajax
-
13-09-2019 - |
Domanda
Mi piacerebbe utilizzare il modello vincolante per mantenere i miei controllori cercando pulito, si può vedere come molto più bello sta usando il modello di legame:
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
}
Quando si fa vincolante modello, possiamo semplicemente usare un modulo con i nomi corretti nel Html.TextBox("")
Che dire di jQuery? Come posso fare in modo che quando faccio un $.post(url, data, callback, dataType)
o una chiamata al $.ajax(options)
Create(Person personToCreate)
che l'oggetto Person si riempie correttamente?
Soluzione
È necessario:
- Fare i nomi di proprietà nei dati corrispondono l'argomento / proprietà di nomi di tipo rilegati.
- Inserire sempre un valore per tutti gli argomenti / proprietà di tipo legato non annullabili.
Numero 2 è quello grande, in termini di motivo per cui vincolante per la persona in grado di comportarsi in modo diverso che specificare i singoli argomenti di azione per ogni proprietà. Se si dispone di un tipo con una proprietà non annullabile chiamato "Pippo", poi non riuscendo a fornire un elemento foo nel modulo impedirà vincolante.