TOC

This article has been localized into Spanish by the community.

Layout:

El archivo ViewImports

ASP.NET MVC y Razor vienen con una gran cantidad de funcionalidad avanzada para trabajar con tus vistas. Por ejemplo, puedes referenciar tipos de tu propio proyecto o incluso del framework .NET en tus vistas, ya que la vista está completamente separada del controlador en este aspecto, todas tus sentencias using en el controlador no hacen nada en tu vista. Esto significa que tendrás que usar referencias completas, como esto:

@MyProject.Helpers.StringHelper.GetSummary(longString)

O como una alternativa, incluye el espacio de nombres en tu vista, usando una sentencia "using:"

@using MyProject.Helpers

Sin embargo, tendrías que hacer esto en todas tus vistas, para todos los espacios de nombres que quisieras incluir. Esto es mucho trabajo, especialmente si después decides incluir otro espacio de nombres en todas sus vistas, pero afortunadamente ASP.NET MVC puede ayudarnos. La solución es llamada ViewImports y es usada incluyendo un archivo llamado _ViewImports.cshtml en tu proyecto. Tal como el archivo _ViewStart.cshtml, el archivo _ViewImports.cshtml es invocado para todas tus vistas, antes de que sean representadas. Esto te permite definir funcionalidad común e imports, por ejemplo las ya mencionadas sentencias using.

El archivo _ViewImports.cshtml puede ser usado para algo más que un conjunto común de sentencias using - soporta las siguientes directivas Razor:

  • @using
  • @inject
  • @model
  • @inherits
  • @addTagHelper
  • @removeTagHelper
  • @tagHelperPrefix

Agregando un archivo _ViewImports

Para agregar un archivo _ViewImports a tu proyecto, haz lo mismo a como hicimos para el archivo _ViewStart.cshtml. Este puede ser Generalmente puesto en la raíz de tu carpeta Views:

El archivo debe llamarse _ViewImports (note el guión bajo como prefijo - ¡es importante!):

Una vez agregado, puedes empezar a agregar directivas compartidas al archivo - automáticamente se aplicarán a todas tus vistas.

_ViewStart vs. _ViewImports

En este punto, puedes haber notado que los archivos _ViewStart y _ViewImports son muy parecidos - ambos te permiten implementar funcionalidad que se aplicará automáticamente a tus vistas. Sin embargo, hay una diferencia importante: Cualquier sentencia using agregada al archivo _ViewStart esta limitada a este archivo y no aplica a las vistas actuales - en otra mano, el archivo _ViewImports esta específicamente diseñado para extender su limite o alcance a las vistas, permitiendole a tus vistas tomar ventaja de las sentencias using definidas en el archivo _ViewImports.

Resumen

El archivo _ViewImports te permite aplicar un rango de directivas Razor a todas tus vistas automáticamente, por ejemplo usando las sentencias using o la funcionalidad TagHelper.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!