Sono un programmatore web alle prime armi quindi per favore perdonami se un po 'del mio "gergo" non è corretto. Ho un progetto che utilizza ASP.NET utilizzando il framework MVC3.
Sto lavorando a una visualizzazione amministratore in cui l'amministratore modificherà un elenco di apparecchiature. Una delle funzioni è un pulsante "aggiorna" che desidero utilizzare jquery per modificare dinamicamente la voce sulla pagina web dopo aver inviato un messaggio al controller MVC.
Presumo che questo approccio sia "sicuro" in un unico ambiente di amministrazione in cui vi è la minima preoccupazione che la pagina web non sia più sincronizzata con il database.
Ho creato una vista fortemente tipizzata e speravo di passare i dati del modello al controllo MVC utilizzando un post AJAX.
Nel seguente post, ho trovato qualcosa di simile a quello che sto cercando di fare: JQuery Ajax e ASP.NET MVC3 che causano parametri nulli
Userò il codice di esempio dal post sopra.
Modello:
public class AddressInfo
{
public string Address1 { get; set; }
public string Address2 { get; set; }
public string City { get; set; }
public string State { get; set; }
public string ZipCode { get; set; }
public string Country { get; set; }
}
controller:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Check(AddressInfo addressInfo)
{
return Json(new { success = true });
}
}
script in Visualizza:
<script type="text/javascript">
var ai = {
Address1: "423 Judy Road",
Address2: "1001",
City: "New York",
State: "NY",
ZipCode: "10301",
Country: "USA"
};
$.ajax({
url: '/home/check',
type: 'POST',
data: JSON.stringify(ai),
contentType: 'application/json; charset=utf-8',
success: function (data.success) {
alert(data);
},
error: function () {
alert("error");
}
});
</script>
Non ho ancora avuto la possibilità di utilizzare quanto sopra. Ma mi chiedevo se questo fosse il metodo "migliore" per restituire i dati del modello al controllo MVC utilizzando AJAX?
Dovrei essere preoccupato per l'esposizione delle informazioni sul modello?