Visual Studio y el manejo de vistas-parciales en MVC

 

En el presente artículo voy  a presentarles un ejemplo práctico para poder manejar vistas parciales en MVC para realizar consultas a base de datos sin necesidad de realizar un “submit” de la página principal con la cual se está trabajando, lo cual es una opción muy útil dentro de las funcionalidades que puede ofrecer una aplicación. A continuación voy a dar una breve introducción de ciertos conceptos básicos de MVC.

 

En el modelo de desarrollo de aplicaciones MVC (Model-View-Controller) es una estrategia para la construcción de aplicaciones donde existe una fuerte separación de la lógica de negocio, acceso a datos, y la interfaz de usuario, en donde:

  • Models: Se maneja la capa de datos a través de la creación de un modelo basado en clases para la representación de los objetos de datos, y si se almacena dicha información en base de datos, el modelo puede incluir el código de acceso para operaciones del tipo CRUD (Create-Read-Update-Delete)

  • Views: Representa el manejo de la interfaz con el usuario a través de la generación de páginas en HTML y código C# bajo la representación de archivos “cshtml”.

  • Controllers: Implementa la lógica de negocio de la aplicación y demás acciones para unir capa “Model” con la capa “View. Se representan como archivos “.cs” con código C#.

 

Para información más información se sugiere consultar este enlace aquí.

 

                Las vistas parciales son herramientas que permiten reutilizar los mismos  o bloques similares de código HTML en distintas partes de la aplicación, además de servir como recurso para realizar consultas parciales sin tener que realizar un “submit”  de la página principal.

 

A continuación voy  a mostrar una secuencia de pasos para manejar una vista parcial, utilizando fundamentos básicos de MVC. Aun cuando se realizó el esfuerzo de detallar este procedimiento, existe la precondición de que el lector tenga conocimientos previos en Visual Studio, C#, MVC, T-SQL y  Server Server, etc. para poder entender el ejemplo.  

 

 

Pasos

Imágenes

Procedemos a entrar a SQL Server  Management Studio

  ima1.jpg

El siguiente paso es conectarse a una instancia de SQL Server, ingresando nombre de servidor y “Login” y “Password”

ima2.jpg

Se crea una base de datos dentro de la instancia de SQL Server con la cual se va a trabajar

ima3.jpg

Creación de base de datos

 

ima4.jpg

Se crea una tabla que aloje los campos y datos  para el ejemplo a desarrollar

ima5.jpg

Ahora procedemos a entrar a Visual Studio

  ima6.jpg

Al entrar al Visual Studio selecionamos “New Project”

ima7.jpg

En Visual Studio creamos un proyecto ASP.NET MVC para poder realizar el ejemplo

ima8.jpg

Al crearse el proyecto de Visual Studio, se selecciona la carpeta Model y se marca click derecho, se elige la opción “AddèNew item”

ima9.jpg

Se crea una instancia EntityFramework para el manejo de la capa de datos.

ima10.jpg

Se selecciona la base de datos para trabajar

ima11.jpg

Se establecen los parámetros de conexión a la base de datos previamente creada.

ima12.jpg

Una vez establecida la conexión a base de datos, se procede a seleccionar la tabla “Tabla1” la cual utilizaremos en este ejemplo. Se selecciona con el check box y se finaliza el proceso

 ima13.jpg

Ya creada la instancia de Entity Framework, se procede a crear una clase controlador desde la sección de “Solution Explorer”, carpeta “Controller” del proyecto que estamos trabajando en Visual Studio

ima14.jpg

Se crea una clase del tipo “Controller” asociada a  la clase “Tabla1” del modelo de EntityFramework para desarrollar la lógica de la aplicación.

ima15.jpg

Al crear el controlador, se crea un archivo .”cs” donde están las distintas funciones nativas de una clase controlador MVC, las funciones ActionResult

ima16.jpg

Se crea una función “ActionResult” que permitirá generar la vista “padre” que tiene los datos para generar la vista parcial.

ima17.jpg

En la función creada se realiza click derecho sobre el nombre de la misma para crear una vista.

ima18.jpg

Se crea una vista (“View”) asociada al controlador reciente creado. Esta página alojará el llamado a la vista parcial.

ima19.jpg

Se crea una función “ActionResult” en el mismo controlador que se creó la función anterior que permitirá manejar la vista parcial.

ima20.jpg

Se crea la vista parcial del tipo “strongly-type-view” para que despliegue los datos de la tabla a trabajar. Se realiza click derecho sobre la función creada en el paso anterior y se selecciona “Add View”. Se marca la opción “Create as partial view”

ima21.jpg

En el archivo  ListadoI.cshtml creado se agregan tres elementos: un bloque DIV en HTML en el cual se desplegará la vista parcial,  una sección de script para establecer el archivo JavaScript que ejecutará el llamado de la vista parcial, y un botón HTML con el llamado a una función JavaScript que se encuentra en el archivo: Comandos.js

  ima22.jpg

Ahora en la capeta “Script” del proyecto, seleccionamos agregar un nuevo elemento para incorporar a la solución el archivo JavaScript requerido. Lo llamaremos “Comandos.js”

  ima23.jpg

En el  archivo JavaScript se colocan las instrucciones para el llamado de la función dentro del controlador que maneja el despliegue de la vista parcial

ima24.jpg

Al archivo de vista parcial no se le realiza ningún cambio, simplemente recibirá la data desde la función del controlador.

ima25.jpg

Aquí se muestra el código del controlador, tanto para la generación de la vista “ListadoI” y la vista parcial “Partial1” con el filtrado de data respectivo debido a un dato que se recibe como parámetro, el cual es la variable “tipo”, la cual obtiene su valor al ejecutar la instrucción en el archivo Javascript:

 

"/Tabla1/Parcial/?tipo=" + $("#Tipo").val()

 

 

Esta instrucción asigna el valor de la lista desplegable a la variable “tipo” en la URL.

 

 

ima26.jpg

A continuación vemos el resultado de lo construido, una vista que aloja una vista parcial con resultados de acuerdo al parámetro establecido en una lista desplegable de la vista inicial.

ima27.jpg

Al seleccionar otro valor de la lista desplegable y marcar el botón de buscar, los valores de la vista parcial cambian.

ima28.jpg

 

 

 

                Con este paso a paso se muestra un ejemplo sencillo de cómo realizar a una consulta de datos sin generar un evento “submit” en la página principal donde se está trabajando.

 

Espero que este artículo les sea de utilidad, si quieren aprender más sobre desarrollo de aplicaciones,  desarrollo en SharePoint o de SharePoint en general por favor visita nuestro site de Eigo Academy para conocer nuestra oferta de cursos.