Cargando



ASP.NET MVC - Acceso a los Datos del Modelo

En este tutorial veremos como hacer que los datos del modelo sean empaquetados para poder ser utilizados en la vista.


abr 27 2014 02:01
Profesional
abr 28 2014 13:43
Una parte importante de las aplicaciones web es que podamos tener persistencia a través de almacenamiento de datos en las diferentes Bases de Datos. Cuando trabajamos con la metodología MVC tenemos un aspecto que es el modelo, en este hemos de almacenar la estructura de nuestra persistencia de datos, es decir que este debe relacionarse directamente con la Base de Datos.

Para que esto que hemos descrito tome sentido, lo que se hace es que el controlador pregunta por los datos directamente al modelo en caso de ser necesario y luego hace todos los arreglos correspondientes para pasar los datos relevantes a la vista.

ViewBag

Antes de pasar a ver como se utiliza el modelo, primero debemos conocer el método ViewBag, este funciona como un empaquetador para el método ViewData de forma que podamos hacer una implementación más limpia al momento de definir los datos en el controlador.

Veamos en la siguiente imagen una definición del controlador About utilizando este método:

asp_datosmodelo.jpg


Acá vemos como definimos las diferentes propiedades con el método ViewBag seguido de un punto y el nombre de la propiedad que hará la diferencia, con esto nos evitamos escribir corchetes y comillas disminuyendo así la cantidad de caracteres a escribir.

Luego en nuestra vista about.cshtml podremos obtener los datos como vemos en el siguiente código:

<h1>@ViewBag.CompanyName</h1>
<div>@ViewBag.CompanyDescription</div>

Datos desde el Modelo
El modelo es una entidad sumamente importante ya que es el que nos va a dar la estructura de los diferentes elementos de nuestra aplicación, por ello seguramente cuando un usuario quiera obtener datos estos vendrán de alguna estructura previamente representada por el modelo.


Si tenemos un modelo ya hecho como por ejemplo el siguiente:

public class CompanyInfo
{
public string Name { get; set; }
public string Description { get; set; }
}


Podemos acceder a sus propiedades haciendo una instancia en nuestro controlador de la forma que vemos en la siguiente imagen:


asp_datosmodelo2.jpg


La primera propiedad es bastante sencilla simplemente decimos que el nombre del usuario es el correspondiente con el sistema de autenticación del framework, luego definimos una variable la cual será una instancia de nuestro modelo y gracias a los constructores podemos hacer el establecimiento de los valores de los atributos del modelo, en este caso Name y Description por último retornamos nuestra vista.

Recibiendo los Datos en la Vista

Ya que hemos establecido los datos en el controlador que provienen de nuestro modelo es hora de hacer que la vista muestre los datos que el usuario espera recibir luego de haber consultado el recurso.

Veamos el siguiente código:

@{ var company = (CompanyInfo)ViewData.Model; }
<h1>@company.Name</h1>
<div>@company.Description</div>

Lo primero que realizamos es igualar una variable y decirle que va a ser tipo del modelo a utilizar y adicionalmente la vinculamos con el método ViewData, todo esto en un bloque razor, luego simplemente accedemos a cada propiedad del modelo con un punto, como vemos es algo muy simple y que no lleva una complejidad mayor, esto es gracias a que el controlador hizo la mayoría del trabajo.

Finalizando el tutorial ya sabemos cómo obtener datos desde una estructura de un modelo y luego mostrarlo en la vista con la ayuda del controlador.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X