none
Recuperar datos desde la vista y guardarlo en una base de datos. RRS feed

  • Pregunta

  • Buenas quisiera que me ayuden, estoy desarrollando un sistema para un colegio en la plataforma MVC3

    El sistema en la parte de registrar notas

    me carga los estudiantes de cada materia, y el docente debe ingresar en un texbox las notas de todos los estudiantes y al presionar

    "GUARDAR" el sistema debe guardar estas notas en la base de datos.

    Lo que esto haciendo es que me ingrese la nota de cada estudiante en un @Html.TextBox("nota")

    y en el controlador recuperar estos datos,

    he investigado y logro recuperar con un Request.Form["nota"] pero me recupera como un string

    y nose como guardarlo en una variable y que me guarde en la base de datos con un for o co nun foreach. Desde ya muchas gracias por su ayuda. Espero sus respuestas.


    Luis

    viernes, 30 de noviembre de 2012 17:42

Todas las respuestas

  • Desde luego, como poder, podrías recuperar los datos del Request.Form pasándolos a variables y luego usar esas variables para construir una sentencia SQL que grabe en base de datos y ejecutar esa sentencia mediante un SqlCommand. Pero las aplicaciones modernas en MVC usualmente no suelen escribirse de esa manera.

    En su lugar, lo que se hace es emplear un mapeador objeto-relacional (ORM) tal como Entity Framework para generar una clase que represente los registros de tus tabla de base de datos. Esa misma clase se usa como Modelo para MVC. Se genera una Vista que tome esa clase como Modelo. En la vista, se pone a cada TextBox el mismo nombre que el campo del modelo en el que debe almacenarse (Visual Studio hace esto automáticamente si seleccionas la opción de añadir una nueva vista tipada). Y en el método de acción, se pone como argumento un parámetro del mismo tipo que el modelo. De esta forma, los automatismos de MVC directamente pasan todos los campos de la vista a los correspondientes campos de tu clase, y te llega todo directamente al método de acción en una única variable. Y después, esa variable se pasa al ORM para que se grabe en base de datos mediante los métodos que el propio ORM tiene o debe de tener para ese fin (si usas Entity Framework, sería contexto.tabla.Add(variable), seguido de contexto.SaveChanges()).

    viernes, 30 de noviembre de 2012 22:35