Jestem początkującym programistą internetowym, więc wybacz mi, jeśli któryś z moich „żargonów” nie jest poprawny. Mam projekt wykorzystujący ASP.NET przy użyciu frameworka MVC3.
Pracuję nad widokiem administratora, w którym administrator będzie modyfikował listę sprzętu. Jedną z funkcji jest przycisk "aktualizuj", którego chcę użyć jquery do dynamicznej edycji wpisu na stronie po wysłaniu posta do kontrolera MVC.
Przypuszczam, że to podejście jest „bezpieczne” w przypadku pojedynczego ustawienia administratora, w którym istnieje minimalna obawa, że strona internetowa nie będzie zsynchronizowana z bazą danych.
Stworzyłem widok, który jest silnie wpisany i miałem nadzieję przekazać dane modelu do kontrolki MVC za pomocą posta AJAX.
W poniższym poście znalazłem coś, co jest podobne do tego, na co patrzę: JQuery Ajax i ASP.NET MVC3 powodujące parametry zerowe
Wykorzystam przykładowy kod z powyższego postu.
Model:
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; }
}
Kontroler:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Check(AddressInfo addressInfo)
{
return Json(new { success = true });
}
}
skrypt w widoku:
<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>
Nie miałem jeszcze okazji skorzystać z powyższego. Ale zastanawiałem się, czy jest to „najlepsza” metoda przekazywania danych modelu z powrotem do kontrolki MVC przy użyciu AJAX?
Czy powinienem się martwić ujawnieniem informacji o modelu?