Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Appels de méthodes de Master page, bonne pratique ?

3 réponses
Avatar
Sébastien Richer
((MasterPage)this.Master).afficherMenuTop();

Par exemple, est-ce que c'est une bonne pratique ? VS 2005 me donne des
warnings, je ne crois pas qu'il aime =E7a.

3 réponses

Avatar
Karl Seguin [MVP]
Je vais asseyer d'aider sur le newsgroup francais...

C'est pas mauvais ce que tu fais. Tu devrais specifier le type de ton
MasterPage sur la page avec:
<%@ MasterType VirtualPath="~/MyMaster.master" %>

Je crois que sa va satisfair VS.NET.

To pourais aussi considerer d'utiliser une class dans ton fichier App_Code -
ca depand de ce que tu fais. Si tu modify/interact avec les éléments
visuelles de la page, tu devrais te servir de la masterpage (come tu sembles
faire aver afficherMenuTop)...si tu cherches simplement une place à avoir du
code réutilisable, utilise une class dans App_Code.

Karl
--
http://www.openmymind.net/
http://www.codebetter.com/


"Sébastien Richer" wrote in message
news:
((MasterPage)this.Master).afficherMenuTop();

Par exemple, est-ce que c'est une bonne pratique ? VS 2005 me donne des
warnings, je ne crois pas qu'il aime ça.
Avatar
Sébastien Richer
Salut Karl,

D'abord merci pour la réponse. Et bien on dirait que mes "warnings"
sont parties, j'ai peut-être changé de quoi (je continue le travail
de quelqu'un d'autre).

En fait la raison principale pour laquelle ma méthode
"afficherMenuTop" est dans le code de ma masterpage, c'est que mon
"menu" est sur ma masterpage. Donc je ne m'y connais pas en "bonne
pratiques", j'y suis simplement allé intuitivement.

"<%@ MasterType VirtualPath="~/MyMaster.master" %>"

En ajoutant ça dans ma page de contenu, je n'ai plus besoin de
"caster" ma masterpage en masterpage, alors je crois que c'est déjà
bien mieux comme ça.

En effet ma méthode affecte des éléments visuels de ma page, alors
comme tu dis ça c'est ok.

Je me demandais ce que tu voulais dire par "une class dans ton fichier
App_Code - ".

Je suis encore nouveau avec ASP.NET et C#. Si je veux me faire une
méthode utilitaire et que je voudrais qu'elle soit accessible partout
je devrais faire ça comment ?

Merci encore !


Karl Seguin [MVP] a écrit :

Je vais asseyer d'aider sur le newsgroup francais...

C'est pas mauvais ce que tu fais. Tu devrais specifier le type de ton
MasterPage sur la page avec:
<%@ MasterType VirtualPath="~/MyMaster.master" %>

Je crois que sa va satisfair VS.NET.

To pourais aussi considerer d'utiliser une class dans ton fichier App_Cod e -
ca depand de ce que tu fais. Si tu modify/interact avec les éléments
visuelles de la page, tu devrais te servir de la masterpage (come tu semb les
faire aver afficherMenuTop)...si tu cherches simplement une place à avo ir du
code réutilisable, utilise une class dans App_Code.

Karl
--
http://www.openmymind.net/
http://www.codebetter.com/


"Sébastien Richer" wrote in message
news:
((MasterPage)this.Master).afficherMenuTop();

Par exemple, est-ce que c'est une bonne pratique ? VS 2005 me donne des
warnings, je ne crois pas qu'il aime ça.


Avatar
Karl Seguin [MVP]
Je suis contend que le problèm est réglé :)

Les class dans le fichier App_Code sont visible pour toute les page/user
control du site. Si tu veus simplement faire un method utilitaire, tu
pourais:

public static class Utility
{
public static void DoSomething()
{
....
}
}


Ensuite, tu étulises la class come:

Utility.DoSomething()...

Si tu veus accèder au propertie d'ASP.NET dans c'est function, tu peux
utiliser:

HttpContext current = HttpContext.Current;
if (current == null)
{
throw new InvalidOperationException("Cette fonction doit-être utiliser
dans un context web");
}
HttpRequest request = current .Request;
int id = request.QueryString["id"];
...

Karl

--
http://www.openmymind.net/
http://www.fuelindustries.com/


"Sébastien Richer" wrote in message
news:
Salut Karl,

D'abord merci pour la réponse. Et bien on dirait que mes "warnings"
sont parties, j'ai peut-être changé de quoi (je continue le travail
de quelqu'un d'autre).

En fait la raison principale pour laquelle ma méthode
"afficherMenuTop" est dans le code de ma masterpage, c'est que mon
"menu" est sur ma masterpage. Donc je ne m'y connais pas en "bonne
pratiques", j'y suis simplement allé intuitivement.

"<%@ MasterType VirtualPath="~/MyMaster.master" %>"

En ajoutant ça dans ma page de contenu, je n'ai plus besoin de
"caster" ma masterpage en masterpage, alors je crois que c'est déjà
bien mieux comme ça.

En effet ma méthode affecte des éléments visuels de ma page, alors
comme tu dis ça c'est ok.

Je me demandais ce que tu voulais dire par "une class dans ton fichier
App_Code - ".

Je suis encore nouveau avec ASP.NET et C#. Si je veux me faire une
méthode utilitaire et que je voudrais qu'elle soit accessible partout
je devrais faire ça comment ?

Merci encore !


Karl Seguin [MVP] a écrit :

Je vais asseyer d'aider sur le newsgroup francais...

C'est pas mauvais ce que tu fais. Tu devrais specifier le type de ton
MasterPage sur la page avec:
<%@ MasterType VirtualPath="~/MyMaster.master" %>

Je crois que sa va satisfair VS.NET.

To pourais aussi considerer d'utiliser une class dans ton fichier
App_Code -
ca depand de ce que tu fais. Si tu modify/interact avec les éléments
visuelles de la page, tu devrais te servir de la masterpage (come tu
sembles
faire aver afficherMenuTop)...si tu cherches simplement une place à avoir
du
code réutilisable, utilise une class dans App_Code.

Karl
--
http://www.openmymind.net/
http://www.codebetter.com/


"Sébastien Richer" wrote in message
news:
((MasterPage)this.Master).afficherMenuTop();

Par exemple, est-ce que c'est une bonne pratique ? VS 2005 me donne des
warnings, je ne crois pas qu'il aime ça.