En razor cada que se abre un @ se ejecuta código c#
Introducción a ASP.NET Core
Todo lo que aprenderás sobre ASP.NET Core
Herramientas y prerrequisitos
La importancia del middleware en el entorno web
Mi primera aplicación ASP.Net Core
Habilitar certificados, planillas preinstaladas
Revisión detalladas de la estructura de directorios
¿Qúé es el patrón MVC?
Nuestro Proyecto
Modelo Vista Controlador a nivel básico
Vista y controlador
Modelo a nivel básico
Razor Syntax
Vistas Plantillas y modelo
Vistas, plantillas, Archivos de inicio
Importación de modelos
Vistas para listar asignaturas
Vistas parciales
Mostrando otras listas de objetos
Actualizando la versión de bootstrap
Entity Framework Core
Introducción a entity framework
Conectando la solución con Entity Framework Core
Sembrando datos en la base de datos
Optimizando siembra de datos
Refactoring del Modelo para un ORM
Implementando cambios en el modelo
Refactoring siembra de datos
Ajuste de vistas y formularios
Ajuste de enrutamiento
Ajuste de vistas y controladores
Creando un formulario
Validaciones de formularios
Tu primer Reto
Atributos de validación y bases de datos
Data annotations
Segundo Reto
Usando una Base de Datos de verdad
Diseño de vistas y controladores optimizado
Scaffolding o borrón y cuenta nueva
Tercer Reto
Deploy del sitio
Publicando el website
Conclusiones
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Juan Carlos Ruiz
Aportes 42
Preguntas 4
En razor cada que se abre un @ se ejecuta código c#
Por si alguien tiene el mismo tema, estoy trabajando .NETCore 6.0 y para cambiar el controlador por defecto, el cambio debe hacerse en el archivo Program.cs
app.MapControllerRoute(
name: "default",
pattern: "{controller=Escuela}/{action=Index}/{id?}");
Nota mental: es @model Escuela y NO @Model Escuela xD
Le falta un live reload
Razor surge de la necesidad de poder escribir un código familiar de manera rápida dentro de HTML.
Razor permite alternar entre lo que tengo en el FrontEnd código que es creado en el BackEnd para hacer que las cosas funcionen fácilmente.
Los lenguajes fuertemente tipados obligan a que hagan validaciones de tipos en tiempo de desarrollo y no en tiempo de ejecución.
Se utiliza @Model para referirse a las propiedades del objeto o del modelo dentro del código Razor que genera la vista y @model, sólo en el encabezado del código de la vista para incluir el modelo y hacerla fuertemente tipada.
Objetivos de Razor
.
Son varios los objetivos que Microsoft se ha marcado en la creación de este motor de vistas, entre los que destacaríamos:
.
Compacto, expresivo y fluido: buscan reducir la cantidad de código que necesitamos para crear las vistas, evitando que tengamos que denotar de una forma especial cada línea de código procedural. El compilador será lo suficientemente inteligente como para inferir, en muchas ocasiones, qué tipo de código estamos escribiendo.
Fácil de aprender: aunque esto es siempre relativo, puesto que depende del bagaje previo del desarrollador y de sus capacidades.
Funciona en cualquier editor de texto, luego no vamos a tener que estar anclados a Visual Studio o cualquier otra herramienta para crear nuestros ficheros Razor. Obviamente, el soporte al lenguaje es superior en una herramienta como Visual Studio, donde tendremos toda la potencia de IntelliSense a nuestro alcance, que, si editamos simplemente con el Block de Notas, pero la decisión última será nuestra.
Testeable: podremos crear tests unitarios de las vistas.
Los archivos que contienen Razor generalmente tienen una extensión de archivo .cshtml.
quizas estoy usando una version actualizada pero las instrucciones de startup me aparecen bajo el archivo Program.cs
en net 6 es asi.
ya no existe el archivo startup.cs, solo es en program.cs
y modifican lo siguiente
app.MapControllerRoute(
name: "default",
pattern: "{controller=School}/{action=Index}/{id?}");
Se pueden enviar mas de un objeto como parámetro a la vista? Cómo se trabajaría con la variable @Model?
Razor es una sintaxis de marcado para incrustar código basado en servidor en páginas web. La sintaxis de Razor consiste en marcado de Razor, C # y HTML. Los archivos que contienen Razor generalmente tienen una extensión de archivo .cshtml . Razor también se encuentra en los archivo
Jaaja que buena referencia a la lucha libre
Por cierto, si quieren comentar su codigo en los archivos *.cshtml pueden hacer uso del mismo simbolo usado en HTML puro, <!– y –>, por ejemplo:
<!-- ESTO ES UN COMENTARIO -->
¿Puedo pasar varios modelos a la vista?, o el modelo toma como tal el objeto que le pasemos, por ejemplo un array de objetos.
Mucho cuidado para evitar una catástrofe
Todo lo que esté después de @ es código C#
Hola Juan Carlos, con mucho respeto. La palabra “layout” se pronuncia “leyaut”. Perdona, pero lo menciono para mejora de tu inglés. Saludos.
Ventajas de los lenguajes fuertemente tipados:
Evitamos los errores en tiempo de ejecucion como los crasheos
Damos mas responsabilidad singular al modelo al que nos acoplamos
Podemos corregir en tiempo de desarrollo
Genial!
😎
El carácter @ nos permite incluir código c# en el html de dos formas
declarando código en una sola línea , se inicia la línea con @
declarando código en más de una línea con @ + {}
para el caso del código C# en mi html el compilador no indica los errores de sintaxis, debido a que el código en razor es débilmente tipado.
Creo que cada vez me esta gustando mas el lenguaje.
Me recordó muchísimo a nodeJS con Handlebars
Bien Explicado
Microsoft no debio llamarlo Razor , sino Ramon.
2x
Si conocen preprocesadores HTML como puede ser ejs, que insertaban código JS con <% %>, razor es parecido, insertando código C# con @
Hey Razor Ramon!!! gran referencia xD.
Esta es la documentaciò para saber más de razor https://docs.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-2.2&tabs=visual-studio
Esos resumenes al final de cada etapa son muy útiles para afianzar conocimientos
Genial, ahora para avanzar en la clases es más rápido, ya no recarga la página
Alguien sabe acerca del por que cuando escribo
@Model Escuela
este también aparece en la página web?
@{} Permite crear código c# embebido en una página HTML con JavaScript.
QModel - Es un modelo débilmente tipado es decir que permite crear variables al vuelo.
Una de las ventajas de los lenguajes fuertemente tipados, es que se realizan las validaciones de tipos en tiempo de desarrollo y no de ejecución.
Excelente vamos paso a paso en este aprendizaje
sintaxis cuchillas!!, interesante.
Razor …
En el video anterior utilizamos las propiedades de un modelo enviado desde el controlador sin definirlo en la vista, lo cual es algo debilmente tipado y no se permitía en .NET MVC.
En .NET Core tenemos la opción de ser debilmente tipado lo cual puede generar problemas al acceder a propiedades al vuelo y que no existan, por lo cual es mejor utilizar la opción de fuertemente tipado e indicar en la vista el modelo que se está recibiendo y de esta manera se realicen las validaciones de las propiedades y métodos a los que se accede.
Qué clase de PHP es esto? D:
por que @model para indicar el tipo pero @Model para usarlo? media rara la convención…
Como hago para pasar varios argumentos?
Cuando hablo el profesor del personaje de la WW me hizo acordar mucho al profe Leonidas. 😂😂 Genial Clase
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?