2010-12-11 10 views
7

Estoy aprendiendo algunos basic stuffs in razor. Estoy un poco confundido sobre el archivo de extensión: las vistas y las vistas parciales parecen compartir la misma extensión cshtml. Pensé que era un error en mi nombre, pero volví a marcar la casilla de verificación, obtengo la misma extensión para ambos tipos de archivos.¿Por qué las vistas y las vistas parciales tienen la misma extensión de archivo cshtml en Razor?

Además, con vistas al formulario web del motor, es más fácil para localizar puntos de vista por sus colores y/o extensiones (Ver son de color blanco-.aspx, parcial son de color amarillo-Ascx, Maestro son de color blanco/azul-.master)

Si así es como debe ser ahora, ¿por qué las vistas y las vistas parciales comparten la misma extensión? ¿Hay alguna razón por la que hayan hecho que todos tengan la misma extensión?

Gracias por ayudar a

Respuesta

8

vistas Razor y vistas parciales no necesitan una extensión de archivo por separado debido a que ambos utilizan la misma clase base.

Por el contrario, las páginas WebForms (ASPX), los controles de usuario y las páginas maestras derivan de diferentes clases base, por lo que la distinción era necesaria. Es simplemente el resultado de decisiones de diseño tomadas durante la creación de Asp.Net WebForms.

+0

Eso hace sens. Pero, ¿van a hacer que difieran según el color del icono en el explorador de soluciones? ¿Solo para que las personas localicen diferentes tipos de archivos fácilmente? Simplemente para facilitar las cosas cuando hay muchos archivos en la misma carpeta. – Richard77

+2

@ Richard77 una forma fácil de hacer la distinción sería crear una convención de nomenclatura. Ejemplo: su página maestra podría ser '_Layout.cshtml' y sus parciales podrían ser' ViewNamePartial.cshtml' –

+2

Dado que la extensión es la misma, no hay forma de distinguir entre los dos roles de archivos. Una convención de nomenclatura es la mejor para tal propósito. – marcind

Cuestiones relacionadas