155 votes

Façon correcte d’utiliser _viewstart.cshtml et vue partielle sur le rasoir ?

Je suis en utilisant _viewstart.cshtml à automatiquement attribuer le même Rasoir Mise en page de mon point de vue.

C'est un simple fichier dans la racine de mon point de Vue dossier qui ressemble à ceci:

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

C'est plus SEC que l'ajout de l' @Disposition de la directive pour chaque vue.

Cependant, cela pose un problème pour Rasoir partielle points de vue, car ils courent le contenu de _viewstart.cshtml et donc incorrecte de l'attribuer à eux-mêmes une mise en page, ce qui fait d'eux, messagerie unifiée, n'est plus que partielle.

Voici un hypothétique projet, en montrant la _viewstart.cshtml de fichiers, le partage des _layout.fichier shtml, et une vue partielle ("AnonBar.cshtml").

Example project structure

Actuellement, le chemin que je suis, c'est en ajoutant la ligne suivante à chaque vue partielle:

@{
    Layout = "";
}

Cela semble être le mauvais sens pour désigner une vue partielle en lame de Rasoir. (Notez que, contrairement aux formulaires web moteur de vue de l'extension du fichier est le même pour les vues partielles.)

D'autres options que j'ai envisagé, mais qui sont encore pire:

  • Mettre toutes les vues partielles dans un dossier commun, afin qu'ils puissent partager une commune _viewstart.cshtml. Cela rompt avec la convention de vues dans le même dossier que leur contrôleur.
  • Pas en utilisant des vues partielles.

Est-ce quelque chose qui est encore étoffé par le Rasoir moteur de vue de l'équipe, ou alors j'ai loupé un concept fondamental?

234voto

marcind Points 38002

Si vous de vos contrôleurs (au lieu de ), puis `` ne sera pas exécuté.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X