none
Crear y Editar Registro en ventana Modal RRS feed

  • Pregunta

  • Como puedo hacer la edición y creación de un registro en una ventana modal.

    De momento estoy haciendo estas operaciones en una vista, pero en vez de hacerlo en una vista aparte quiero que en la vista principal cuando presione el boton nuevo o editar me abra esta vista como una ventana modal para hacer la operación 

    Tengo mi clase modelo

    public class UserModels
    {
      public int Id { get; set; }
      public string Nombre { get; set; }
      public int Edad { get; set; }
    }

    En mi controlador para Agregar Tengo Lo siguiente

            public ActionResult Nuevo()
            {
                return View();
            }

    [HttpPost]

    public ActionResult Nuevo(UserswModel user) { try { if(ModelState.IsValid) { using (UsersEntities bd = new UsersEntities()) { var u = new Usuario(); u.Nombre = user.Nombre; u.Edad = usera.Edad; bd.Users.Add(u); bd.SaveChanges(); } return Redirect("~/Usuario/"); } return View(user); } catch(Exception e) { throw new Exception(e.Message); } }


    Mi vista es la siguiente

    @model CrudMVC.Models.ViewModels.UsersViewModel
    @{
        ViewBag.Title = "Nuevo";
    }
    
    <h2>Nuevo</h2>
    
    @using (Html.BeginForm("Nuevo","Usuario", FormMethod.Post))
    {
        <div class="row">
            <div class="col-md-12">
                <div class="form-group">  
                    @Html.LabelFor(u => u.Nombre):
                    @Html.TextBoxFor(u => u.Nombre, "", new { @class = "form-control" })
                    @Html.ValidationMessageFor(u => u.Nombre, null, new { @class = "text-danger" })
                </div>
                <div class="form-group">
                    @Html.LabelFor(u => u.Edad):
                    @Html.TextBoxFor(u => u.Edad, "", new { @class = "form-control" })
                    @Html.ValidationMessageFor(u => u.Edad, null, new { @class = "text-danger" })
                </div>
    
                <br/>
                <div style="text-align:center">
                    <input  type="submit" class="btn btn-primary" value="Guardar" />
                </div>
            </div>
        </div>
    }

    Esta vista de Crear La abro desde mi index al presionar un boton

     <input type="button" class="btn btn-primary" value="Nuevo" onclick="document.location.href='@Url.Content("~/Usuario/Nuevo")'" />

    Lo que quiero es que en vez de dirigirme a una vista cuando presione el boton me abra la vista en el Index como una ventana modal para Crear el registro, y quiero hacer lo mismo con la vista Editar(que me la muestre como modal)

    Podrían indicarme como hacerlo(creo que lo puedo hacer con boostrap o jquery no estoy seguro)

    Una ultima consulta como hago una consulta entre 2 tablas con EF por ejemplo si tengo otro modelo Roles por ejemplo como podria hacer una consulta en mi controlador para que me muestre que tipo de rol tiene el usuario.


    • Editado EddyFlores martes, 2 de julio de 2019 3:29
    martes, 2 de julio de 2019 3:28

Todas las respuestas