tutorial que paginas pages page net asp asp.net-core-mvc razor-pages

asp.net-core-mvc - que - razor pages tutorial



ASP.NET Core 2.0 Razor pages vs Full MVC Core (1)

Recientemente hemos lanzado una aplicación de tamaño bastante decente que utiliza Razor Pages para el front-end y los controladores MVC para la API para los componentes del lado del cliente. Mi experiencia ha sido esta:

El paradigma de las páginas funciona bien cuando su contenido está estructurado en torno a la idea de "páginas" reales en el sitio. Piense en cosas como un Contacto, una Acerca de, o incluso una Página de inicio de sesión. Claro, eso podría hacerse a través de MVC, pero MVC es realmente innecesario. Una simple página será suficiente. Deje los controladores a más cosas como un catálogo de productos o una base de datos de usuarios.

Si su arquitectura MVC gira en torno a la estructura de su vista, las páginas de afeitar son probablemente una buena opción. Aún puede usar los bits MVC para cosas relacionadas con la API, pero el beneficio de las páginas es que su estructura de front-end se vuelve más explícita y menos implícita ("basada en convenciones") como con MVC, donde cada acción podría o no tener una vista que Normalmente se nombra después de la acción.

Ha habido una pregunta en SO: ¿Por qué es Razor Pages el enfoque recomendado para crear una interfaz de usuario web en Asp.net Core 2.0? donde Steve Smith ha explicado amablemente los beneficios de usar Razor Pages sobre MVC completo desde la perspectiva de tener menos archivos.

He estado usando Razor Pages por un tiempo y he notado que, a pesar de la ventaja de la simplicidad de Razor Page, es un poco complicado cuando se trata de enrutamiento personalizado, estructuración de carpetas y modelo de vista complejo (el modelo de página parece estar desordenado).

Entonces, las preguntas son:

  1. Si hay algo más, excepto la simplicidad de una página, preferir Razor Pages en lugar de Controladores / Vistas, ¿me interesa específicamente el rendimiento de los dos marcos?
  2. ¿Es aceptable combinar Razor Pages y Controllers / Views al mismo tiempo?

También agradecería que algunos de los chicos con experiencia compartieran sus pensamientos (ventajas y desventajas) sobre el uso de Razor Pages para comprender mejor este marco.