@BeginForm() : sirve para iniciarlizar formularios en asp.net.
En su forma basica a continuacion se detalla la manera en la cual mediante una clase "Estudiante.cs" se puede instanciar un formulario de tipo get y post
EJEMPLO:
Se crea la clase "Estudiante"con validaciones dentro del "HomeController.cs"
public class Estudiante
{
[Display(Name = "Ingresa un nombre")]
[Required(ErrorMessage = "El campo nombre es requerido")]
public string Nombre { get; set; }
[Display(Name = "Ingresa tu apellido")]
[Required(ErrorMessage = "El campo apellido es requerido")]
public string Apellido { get; set; }
[Display(Name = "Ingresa la edad")]
[Required(ErrorMessage = "El campo edad es requerido")]
public int Edad { get; set; }
}
Posterior a ello se crea la vista dento del index1 de "HomeController.cs"
@model WebApplication2.Controllers.Estudiante
@{
//Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index1</title>
</head>
<body>
<h3>@ViewBag.Nombre</h3>
<div>
@using (Html.BeginForm())
{
<div>
@Html.LabelFor(model => model.Nombre)
@Html.EditorFor(model => model.Nombre)
</div>
<div>
@Html.LabelFor(model => model.Apellido)
@Html.EditorFor(model => model.Apellido)
</div>
<div>
@Html.LabelFor(model => model.Edad)
@Html.EditorFor(model => model.Edad)
</div>
<input type="submit" value="Enviar Información" />
}
</div>
</body>
</html>
Echo esto, se observa los metodos GET y POST de index1 que son los que revuelven toda la lógica de este manejo.
[HttpGet]
public ActionResult Index1()
{
return View();
}
[HttpPost]
public ActionResult Index1(Estudiante estudiante)
{
ViewBag.Nombre = $"Bienvenido, {estudiante.Nombre} {estudiante.Apellido}";
estudiante.Edad = 99;
return View();
}
Este metodo tiene as siguientes sobrecargas
@Html.BeginForm("ActionName", "Controller", "Metodo")
No hay comentarios.:
Publicar un comentario