2011-04-06 3 views
2

J'ai un contrôleur 'QUnitController', alors j'ai un dossier dans mon dossier Views 'QUnit'. Dans ce dossier, j'ai un _ViewStart.cshtml thats codé pour utiliser le fichier _Layout dans ce dossier pour les vues dans le dossier QUnit. Pour une raison quelconque, le _ViewStart.cshtml dans le dossier Views est appelé et non mon _ViewStart.cshtml dans le dossier QUnit. Qu'est-ce que je fais mal ici? Je pensais avoir ce fichier dans le dossier remplacerait celui de la route. Je peux placer des points de rupture dans les fichiers _ViewStart et je vois celui que je veux ne jamais être touché. Quelqu'un peut-il me dire ce que je fais mal?Aide Asp.Net MVC3 Razor, le mauvais _ViewStart.cshtml est appelé

Voici le code du contrôleur. QUnitController.cs

public class QUnitController : Controller 
{ 
    public ActionResult LoadView(string viewName) 
    { 
     return View(viewName); 
    } 
} 

Voici Vues itinéraire/_ViewStart.cshtml

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

} 

Voici QUnit Vues/QUnit/_ViewStart.cshtml

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

} 

Pourquoi suis-je ne pas appeler la _ViewStart correcte ? Quelqu'un peut-il m'aider à corriger le problème? J'apprécie n'importe quelle aide ou conseils que n'importe qui peut avoir.

Merci,
~ ck à San Diego

+0

Quel est le chemin exact de la vue? – SLaks

+0

Je ne vois rien de mal à ce que vous faites. Vérifiez vos noms de fichiers, assurez-vous qu'il y a des espaces supplémentaires, etc. – sarvesh

Répondre

4

Tous les fichiers _ViewStart dans chaque dossier parent sont exécutés; le plus externe est exécuté en premier.

Votre ~/Views/QUnit/_ViewStart.cshtml doit être exécuté en dernier. Etes-vous sûr que votre vue provient du bon dossier?

+0

Ceci est correct; plus tard _viewstart, alors mon _viewstart est appelé. J'avais la logique dans l'extérieur et l'intérieur n'était pas touché. J'ai corrigé le problème. Merci d'avoir répondu. – Hcabnettek

0

Chaque zone appelle son propre _ViewStart.cshtml. Donc, dans le contexte multi-zones, nous devons copier le _ViewStart.cshtml dans le ~/View à ~/Areas/YourArea/Views.

Questions connexes