javascript - varias - En ASP.NET MVC: todas las formas posibles de llamar al método de acción del controlador desde una vista de Razor
mvc c# windows forms (1)
Sé que esta es una pregunta bastante básica aquí.
¿Pero podría decirme todas las opciones posibles disponibles para,
llamar a un método de acción de control [generalmente cualquier rutina del lado del servidor] desde una vista de maquinilla de afeitar y,
en qué escenarios cada uno es mejor aplicable para ser utilizado en.
Gracias.
Método 1: Usar jQuery Ajax Obtener llamada ( actualización parcial de la página ).
Adecuado para cuando necesita recuperar datos jSon de la base de datos.
Método de acción del controlador
[HttpGet]
public ActionResult Foo(string id)
{
var person = Something.GetPersonByID(id);
return Json(person, JsonRequestBehavior.AllowGet);
}
Jquery GET
function getPerson(id) {
$.ajax({
url: ''@Url.Action("Foo", "SomeController")'',
type: ''GET'',
dataType: ''json'',
// we set cache: false because GET requests are often cached by browsers
// IE is particularly aggressive in that respect
cache: false,
data: { id: id },
success: function(person) {
$(''#FirstName'').val(person.FirstName);
$(''#LastName'').val(person.LastName);
}
});
}
Clase de persona
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
Método 2: Uso de jQuery Ajax Post call ( actualización parcial de la página ).
Adecuado para cuando necesita hacer datos de publicación de página parcial en la base de datos.
El método de publicación también es el mismo que el anterior simplemente reemplace [HttpPost]
en el método de Acción y escriba como post
para el método jquery.
Para obtener más información, consulte Publicar datos JSON en controladores MVC aquí.
Método 3: como un escenario de publicación de formulario ( actualización de página completa ).
Adecuado para cuando necesita guardar o actualizar datos en la base de datos.
Ver
@using (Html.BeginForm("SaveData","ControllerName", FormMethod.Post))
{
@Html.TextBoxFor(model => m.Text)
<input type="submit" value="Save" />
}
Método de acción
[HttpPost]
public ActionResult SaveData(FormCollection form)
{
// Get movie to update
return View();
}
Método 4: como un escenario de obtención de formularios ( actualización de página completa ).
Adecuado para cuando necesita obtener datos de la base de datos
Obtener el mismo método que el anterior, simplemente reemplace [HttpGet]
en el método de acción y el método FormMethod.Get
para la forma de vista.
Espero que esto te ayude.