2010-01-11 22 views

Respuesta

38

En teoría, la respuesta es: Una vista parcial es una "subvista" que incrusta en una vista principal, algo que podría reutilizar en varias vistas, como una barra lateral.

En la práctica, la respuesta es: Muy poco.

En teoría, las vistas parciales son más ligeras que las vistas estándar, pero está perfectamente bien pasar una vista "normal" a RenderPartial y el rendimiento parece ser exactamente el mismo. Frecuentemente utilizo vistas .aspx regulares como vistas "parciales" porque puede hacer que hagan referencia a una vista maestra para proporcionar contenido con plantilla, como lo que puede hacer con UserControls en ASP.NET WebForms. Ver here.

Las vistas parciales son más como elementos web en un portal: son objetos completamente independientes. Úselos si el diseño es simple y estático, o si está molesto por los errores Intellisense cuando no tiene las etiquetas <html> y <body> en una Vista estándar.

+0

¿qué hay de retorno Ver() y volver PartialView(), me parece que no hay ninguna diferencia en absoluto – Omu

+0

@Omu https: // stackoverflow.com/a/41982373/4854931 – Alex78191

2

Considérese una PartialView como un control en formularios web, la idea es la parcial es reutilizable

2

Si usted viene de un fondo de formularios web, pensamos en PartialView como un control de usuario.

3

Las vistas son el resultado general de una página que da como resultado una pantalla. Es el contenedor de más alto nivel excepto la página maestra. Mientras que una vista parcial es para una pequeña porción de contenido que puede ser reutilizado en diferentes páginas, o múltiples veces en una página.

Si proviene de formularios web, la vista es similar a un formulario de contenido web, mientras que una vista parcial es como un control de usuario.

3

Mira StackOverflow.com sitio: sitio principal (Ver) contiene componentes como:

  • Etiquetas
  • relacionados
  • anuncio

Así Etiquetas, relacionado, anuncio, etc. se puede componer como PartialViews. La ventaja de esto es que las vistas parciales pueden simplemente almacenarse en caché mediante OutputCache en lugar de volver a crear todo el sitio: ganancia de rendimiento.

+2

Pero, ¿podría prever un sistema que simplemente habilite "Vistas" para que contenga "Vistas", anulando la necesidad de un tipo adicional? – Ben

+0

La vista que contiene otras vistas es muy útil. Depende de usted y es su elección tener una vista grande o una vista como un conjunto de vistas más pequeñas. Todas las vistas parciales deben ser independientes de otras y pueden tener otros tipos como valores de retorno. – Dariusz

6

funciona así:

  • retorno Ver() el contenido de vista va en el @RenderBody() de la /Shared/_Layout.cshtml

  • PartialView retorno() que devuelve sólo Ver el contenido

Cuestiones relacionadas