IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Static et appli web


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Static et appli web
    Bonjour,

    J'aimerai quelques éclaircissements sur la manière dont se comporte un attribut statique dans une classe pendant la durée de vie d'une application web ASP.Net...

    Voilà, mon expérience me vient surtout du PHP où, à chaque appel de page, tous les objets sont recréés et on a pas de persistance d'objet d'un appel au suivant. Donc j'ai un peu de mal avec les notions ASP.Net... Si j'ai une classe avec un attribut statique, j'ai cru comprendre qu'il était le même pour toute l'application (comprendre : tous les utilisateurs, tous les appels de pages tant qu'on ne relance pas l'appli), j'ai d'ailleurs fait un test et effectivement ça a bien l'air d'être ça...

    Donc voici mon soucis (oué, j'y viens ^^)... Je voudrais initialiser un objet au début de l'appel à une page, accessible n'importe quand et n'importe où (donc aussi dans les différente classes) durant le traitement de cette page et uniquement cette page. Bref, que chaque page ait sa propre instance de l'objet, mais que je n'ai pas besoin de le ré-instancier à chaque fois que je l'utilise dans le traitement de la page.

    J'espère que c'est clair Visiblement je ne peux pas utiliser un champ static (pour faire une classe type singleton) pour cela car l'objet sera instancié une fois pour toute et j'aurai toujours la même instance...

    Comment puis-je faire pour me permettre au cours du traitement d'une même page, de n'initialiser qu'une seule fois un objet (à l'initialisation coûteuse mais variable - donc pas possible de le conserver pour toute l'appli) qui me serait accessible un peu partout dans les différentes classes que j'ai définies ?

    J'espère que ce que je raconte est compréhensible Est-ce que vous auriez des idées ? *espoir*

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Une variable private avec des accesseurs public devraient faire l'affaire non?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour ta réactivité

    Une variable private de la page tu veux dire ? J'y ai pensé, mais je vois deux soucis :

    1) Est-ce que je peux avoir accès à la page courante dans une autre classe ? Via un HttContext.Current.QuelqueChose peut-être ? Pour pouvoir exploiter l'accesseur public pour tout mon traitement...

    2) Mes pages ne sont pas en code behind (norme de dev internes obliges). J'ai une classe mère pour mes pages qui dérive de System.Web.UI.Page (mes pages en héritent par la directive inherits="MaPageDeBase") pour faire les traitements généraux. Je pourrais ajouter la variable et l'accesseur là, mais jusqu'à maintenant, je n'ai pas réussi, dans mes bloc <% ... %> à accéder à une méthode public de la classe mère de la page...

  4. #4
    Membre émérite Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Par défaut
    Citation Envoyé par Laewella Voir le message
    Mes pages ne sont pas en code behind (norme de dev internes obliges
    Désolé pour le HS... Comment justifient-ils une telle norme?

  5. #5
    Invité
    Invité(e)
    Par défaut
    @Neptune: Bah en fait, je crois que c'est parce que comme ça, ça ressemble à l'ASP et qu'avant tout était en ASP... Mais bon, je cherche pas trop à comprendre, je suis seulement presta et pas employé ici donc quand on me dit "ici, on fait comme ça", je réponds "ok, d'accord" et je me pose pas plus de question, sinon je m'en sortirais pas -_-

  6. #6
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    T'as pas un exemple de ce que tu souhaites faire?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VS.NET] Créer appli Web sur serveur distant IIS
    Par MatthieuQ dans le forum ASP.NET
    Réponses: 7
    Dernier message: 03/03/2006, 11h40
  2. Réponses: 6
    Dernier message: 10/08/2005, 17h28
  3. Transaction autonomes pour une appli web en .NET
    Par lex0072 dans le forum Oracle
    Réponses: 11
    Dernier message: 08/07/2005, 15h36
  4. appli web : J2EE ou PHP
    Par glesaux35 dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 17/05/2005, 08h56
  5. [JSP] liste de fichiers dans une appli web
    Par cyrso dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 21/01/2005, 17h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo