Master page et VS2005 [Résolu]

Signaler
Messages postés
5
Date d'inscription
dimanche 26 février 2006
Statut
Membre
Dernière intervention
18 avril 2008
-
Messages postés
148
Date d'inscription
vendredi 28 avril 2006
Statut
Membre
Dernière intervention
1 décembre 2009
-
Bonjour, si quelqu'un peut m'aider ,
je
suis entrain de développer un site web avec un master page. j'ai crée
ma master page et j'ai référencer les autres pages,  mais le probléme
c'est que j'ai toujours le message suivant:
Erreur du serveur dans l'application '/WebSite37'. <hr color= "silver" size="1" width="100%" />
Les
contrôles de contenu doivent être des contrôles de niveau supérieur
dans une page de contenu ou une page maître imbriquée qui fait
référence à une page maître.
Description : Une
exception non gérée s'est produite au moment de l'exécution de la
demande Web actuelle. Contrôlez la trace de la pile pour plus
d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.Web.HttpException:
Les contrôles de contenu doivent être des contrôles de niveau supérieur
dans une page de contenu ou une page maître imbriquée qui fait
référence à une page maître.

Erreur source:

Une
exception non gérée s'est produite lors de l'exécution de la demande
Web actuelle. Les informations relatives à l'origine et l'emplacement
de l'exception peuvent être identifiées en utilisant la trace de la
pile d'exception ci-dessous.


Trace de la pile:

[HttpException (0x80004005): Les contrôles de contenu doivent être des contrôles de niveau supérieur dans une page de contenu ou une page maître imbriquée qui fait référence à une page maître.]

System.Web.UI.MasterPage.CreateMaster(TemplateControl owner, HttpContext context, VirtualPath masterPageFile, IDictionary contentTemplateCollection) +652
System.Web.UI.Page.get_Master() +72
System.Web.UI.Page.ApplyMasterPage() +30
System.Web.UI.Page.PerformPreInit() +48
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1449

<hr color ="silver" size="1" width="100%" />Informations sur la version : Version Microsoft .NET Framework :2.0.50727.42; Version ASP.NET :2.0.50727.42

[Insert_Emoticon%28 ][Insert_Emoticon%28 ]
<!-- [HttpException]: Les contrôles de contenu doivent être des contrôles de niveau supérieur dans une page de contenu ou une page maître imbriquée qui fait référence à une page maître. à System.Web.UI.MasterPage.CreateMaster(TemplateControl owner, HttpContext context, VirtualPath masterPageFile, IDictionary contentTemplateCollection) à System.Web.UI.Page.get_Master() à System.Web.UI.Page.ApplyMasterPage() à System.Web.UI.Page.PerformPreInit() à System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) [HttpUnhandledException]: Une exception de type 'System.Web.HttpUnhandledException' a été levée. à System.Web.UI.Page.HandleError(Exception e) à System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) à System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) à System.Web.UI.Page.ProcessRequest() à System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) à System.Web.UI.Page.ProcessRequest(HttpContext context) à ASP.default_aspx.ProcessRequest(HttpContext context) dans c:\Documents and Settings\aymenlk\Local Settings\Temp\Temporary ASP.NET Files\website37\ef1dc30e\72da4d5e\App_Web_wnbsxyep.0.cs:ligne 0 à System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() à System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) -->
Merci

6 réponses

Messages postés
148
Date d'inscription
vendredi 28 avril 2006
Statut
Membre
Dernière intervention
1 décembre 2009

Il faut aussi que tu supprime dans tes page .aspx la balise <form> <head> ... etc car elle sont deja dans ta MasterPage. Il faut juste que tu laisse dans l'.aspx la directive d'entete
<%

@



Page, aprés tu met le contenu de ta page aspx entre ContentPlaceHolderID de ta MasterPage.

Voila un exemple de page .aspx sans MasterPage:





<%@
Page
Language= "C#"
AutoEventWireup="true"
CodeFile="Default.aspx.cs"
Inherits="_Default" %>

<strike><!DOCTYPE
html
PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
</strike><strike>"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml"
</strike><strike>>
<head
runat</strike><strike>="server">
<title>Page sans titre
</title</strike><strike>>
</head</strike><strike>>
<body</strike><strike>>
<form
id="form1"
runat</strike><strike>="server"></strike>
<div>
<asp:GridView
ID="GridView1"
runat="server">
</asp:GridView>
<strike></div</strike><strike>>
</strike><asp:Label
ID="Label1"
runat="server"
Text="Label"></asp:Label>
<strike></form</strike><strike>>
</body</strike><strike>>
</html</strike><strike>></strike>

Voila la même page après lui avoir assigné une masterPage :


<%@
Page
Language="C#"
AutoEventWireup="true"
MasterPageFile
="~/MasterPage.master"
CodeFile ="Default.aspx.cs"
Inherits= "_Default" %>

<asp:Content
ID="Content1"
ContentPlaceHolderID="ContentPlaceHolder1"
Runat ="Server">
<div>
<asp:GridView
ID="GridView1"
runat="server">
</asp:GridView>
</div>
<asp:Label
ID="Label1"
runat="server"
Text="Label"></asp:Label>
</asp:Content>
Messages postés
148
Date d'inscription
vendredi 28 avril 2006
Statut
Membre
Dernière intervention
1 décembre 2009

Tu dois définir pour toute tes page .aspx la masterPage dont elle dependent (MasterPageFile="~/TaMasterPage.master") et surtout qu'elles soit bien dans un
Messages postés
148
Date d'inscription
vendredi 28 avril 2006
Statut
Membre
Dernière intervention
1 décembre 2009

Désolé problème technique ...

Tu dois définir pour toute tes page .aspx la masterPage dont elle depend(MasterPageFile="~/TaMasterPage.master") et surtout qu'elles soit bien dans un conteneur
Messages postés
5
Date d'inscription
dimanche 26 février 2006
Statut
Membre
Dernière intervention
18 avril 2008

mais le probléme réside dans le fait que si je définit à l'aide de la boite de propriété de VS2005 la masterpage d'une page existante (une page que j'ai deja développer avant de préparer la masterpage), je recoit l'erreur déja signaler.
Merci
Messages postés
5
Date d'inscription
dimanche 26 février 2006
Statut
Membre
Dernière intervention
18 avril 2008

Merci
Normalement ca doit etre effectuer automatiquement des que je definie la masterpage d'une page mais bon...
Messages postés
148
Date d'inscription
vendredi 28 avril 2006
Statut
Membre
Dernière intervention
1 décembre 2009

En fait, lorsque tu ajoute une nouvelle page .aspx dans ton projet tu doit cocher le checkbox pour associer ta page a une masterPage de ton projet , dans ce cas là OUI , tu n'aura rien n'a faire.
Par contre si tu ne l'associ pas lors de l'ajout, et bien tu devra le faire à la mano.