En este capitulo, tenemos la importacion de Razor View. Ademas del archivo ViewStart, tambien hay un archivo ViewImports que el marco MVC buscara al representar una vista.
Al igual que el archivo ViewStart, podemos eliminar ViewImports.cshtml en una carpeta, y el archivo ViewImports puede influir en todas las vistas en la jerarquia de carpetas
@using FirstAppDemo.Controllers @model HomePageViewModel @ {ViewBag.Title = "Home}
@foreach (employee var en Model.Employees) { @ Html.ActionLink (employee.Id.ToString (), "Detalles ", nuevo {id = employee.Id}) | @employee. Nombre |
} pestanaLas> Directivas de uso permitiran que el codigo generado desde la vista de Razor se compile correctamente. Sin usar directivas , el compilador de C # no podra encontrar este tipo de empleado. Para ver el tipo de empleado, eliminemos la directiva using del archivo Index.cshtml .
@model HomePageViewModel @ {ViewBag.Title = "Home}
¡Bienvenido!
@foreach (empleado var en Model.Employees) { @ Html.ActionLink (employee.Id.ToString (), "Detalles ", nuevo {id = employee.Id}) | @ employee.Name |
}
Ahora ejecute la aplicacion.
Vera uno de los errores que indica que no se pudo encontrar el tipo o espacio de nombres HomePageViewModel . Esto puede deberse al hecho de que varios de sus las vistas requieren la misma directiva using , asi que en lugar de colocarla dEn cada vista, creemos una importacion de vista en la carpeta Vistas. Esto agregara declaraciones de uso a cada vista con solo hacer clic derecho en la carpeta Vistas y seleccionar Agregar → Nuevo elemento.
En el panel central, seleccione la pagina de importacion MVC View. Por defecto, el nombre es _ViewImports.cshtml. Al igual que ViewStart, no podemos usar este archivo para renderizar HTML, asi que hagamos clic en el boton Agregue.
Ahora agregue la directiva using en el archivo _ViewImports.cshtml como se muestra a continuacion.
@using FirstAppDemo.Controllers
Ahora todas las vistas que aparecen en esta o en cualquier subcarpeta podran utilizar tipos de FirstAppDemo.Controllers sin especificar esta declaracion de uso exacta.reinicie su aplicacion y vera que la vista ahora esta funcionando.