Quand la propriété MasterPageFile d'une vue/page est-elle vérifiée dans le moteur de vue ASP.NET MVC WebForms?Quand le fichier MasterPageFile est-il situé dans ASP.NET MVC WebForms ViewEngine
Ce que je veux faire est d'avoir le code suivant ne sort pas l'erreur:
Parser Error Message: The file '/SomePlaceThatDosentExist/Site.Master' does not exist.
au sens défini dans le fichier .aspx de mon avis:
<%@ Page Language="C#" MasterPageFile="~/SomePlaceThatDosentExist/Site.Master" Inherits="System.Web.Mvc.ViewPage" >
Où aurais-je besoin d'écrire quelques-uns code pour entrer et définir une propriété MasterPageFile valide?
J'ai essayé ce qui suit dans ma classe de ViewPage personnalisée que mes vues hériteront
public override string MasterPageFile
{
get
{
return base.MasterPageFile;
}
set
{
base.MasterPageFile = "~/RealPlace/Site.Master";
}
}
et ont essayé également ce qui suit (dans une vue personnalisée classe de page que mon point de vue hériteront)
protected override void OnPreInit(EventArgs e)
{
base.MasterPageFile = "~/RealPlace/Site.Master";
base.OnPreInit(e);
}
En Dans les deux cas, l'erreur indiquée ci-dessus est affichée. D'après ce que je sais, OnPreInit est le premier point dans le cycle de vie d'un ViewPage, est-il possible d'aller encore plus tôt dans le cycle de vie?
Remarque avant de vous écrire et réponse:
- Je sais à propos de Vue de retour ("ViewName", "MasterPageName");
- Je sais sur les pages maîtres dynamiques, mais je veux accomplir cette tâche spécifique
Merci cela a fonctionné. J'ai eu mon fournisseur de chemin virtuel juste remplacer toute occurrence de "SomePlace" avec "RealPlace" dans toutes les méthodes over-ridable nécessaires (GetFile, FileExists, GetDirectory, DirectoryExists, CombineVirtualPaths) – Omar