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 :

Out of memory exception


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par défaut Out of memory exception
    Bonjour à vous,

    Je ne comprends pas mon erreur, j'ai une dataTable que je remplie manuellement (pour l'instant), donc vous l'avez deviné si je l'a remplie manuellement elle ne doit pas contenir beaucoup de données. De ce fait, j'ai 20 colonnes et 21 rangées. Donc si à 20 colonnes et 21 rangées j'ai un erreur out of memory.... à quoi sert une dataTable? Bref je suis perdu!!!

    Bon je fais un update pour éclaircir la situation: Tout d'abord ma dataTable sert à recevoir des données pour la création dynamique de contrôles, rien de sorcier jusqu'ici. Cependant, lorsque je fais la création d'un noeud dans un treeView, je ne peux comprendre l'erreur que je recois (out of memory exception). Voici le bout de code qui crée un noeud, je vous explique un peu: dans le case 700, je crée un noeud PARENT et dans le case 701, je veux créer un noeud ENFANT. Ce code fonctionne si je fais apelle qu'UNE seule fois les case 700 et 701, donc à l'écran je reçois un noeud PARENT contenant un noeud ENFANT.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    case 700:
         base.CreateChildControls();
         wp_node = new Node();
         wp_node.Tag = "tag" + Convert.ToString(rowTest["HRUN"]);
         wp_node.Text = Convert.ToString(rowTest["DTC02"]);
         //UltraWebTree1.Nodes.Add(wp_node);
    break;
     
    case 701:
            if (Convert.ToString(wp_node.Tag) == "tag" + Convert.ToString(rowTest["DTC01"]))
            {
                     base.CreateChildControls();
                     wp_client = new Node();
                     wp_client.Tag = "tag"+Convert.ToString(rowTest["DTC01"]);
                     wp_client.Text = Convert.ToString(rowTest["DTC02"]);
                     wp_node.Nodes.Add(wp_client);
                     UltraWebTree1.Nodes.Add(wp_node);
                     wp_node.Tag = "tag" + Convert.ToString(rowTest["HRUN"]);
             }
    Cependant, mon erreur survient lorsque que je veux faire la création de nouveaux noeuds parent ou enfant, pour en avoir plusieurs dans mon TreeView. Je crois avoir une idée que le base.createChildControl peut être impliqué dans le problème. Donc sur ce, je continue mes recherches et je suis ouvert à vos commentaires et suggestions.

    Toute réponse sera appréciée!

    Merci et bonne fin de journée
    Gabriel Deschênes

  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
    Tu rentres pas dans une boucle infinie

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par défaut
    Citation Envoyé par lutecefalco Voir le message
    Tu rentres pas dans une boucle infinie
    Non la seule boucle qui affecte ce bout de code est un foreach.... qui tourne pour chaque rangée dans ma dataTable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     foreach (DataRow rowTest in tt_master_table.Rows)
                {
                }

  4. #4
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Fais un debugage pas à pas, pour voir quand arrive le probleme précisement.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par défaut
    Citation Envoyé par Arthis Voir le message
    Fais un debugage pas à pas, pour voir quand arrive le probleme précisement.
    C'est déjà fait, mais j'ai du nouveau. Je donnais au tag du node Child le même que le node Root lors de la création. Alors en réglant ce problème, je peux maintenant créer le nombre de Noeud Parent avec UN noeud enfant que je veux. Cependant, je me limite à ceci, donc je ne peux créer (je reçois encore une exception de out of memory):
    1) un noeud parent avec plusieurs enfant
    2) un noeud enfant d'un autre noeud enfant

    En suivant pas à pas le débug, je me rend compte (veuillez me dire si c'est normal) que je fais le 2 fois code du page load coté serveur . Je m'explique: je fais le page load coté serveur, ensuite le débug va sur la page ASPX (client) dans une de mes fonctions javascript et REVIENT au page load coté serveur. Donc c'est peut-être dû à ceci que je load la mémoire pour ainsi générer une exception out of memory, cependant je ne pense pas que c'est la source de mon problème, mais peu importe j'avance une hypothèse. Merci d'avance pour avancer la vôtre.

    Bon sur ce, merci de suivre ce post et chaque réponse compte. Je vous informe de nouvelles informations de mon bord.

    Gabriel Deschênes

  6. #6
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    TU as un double chargement de ta page à chaque fois qu 'elle est appelée?
    Si c'est le cas ce n'est pas normal, a moins que tu ne l'ai clairement précisé quelque part comme avec un Response.Redirect ou un server.transfer.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par défaut
    Effectivement, j'ai un double rechargement de la page. Je ne demande pas ça, je n'utilise pas de server.transfer, response.redirect. Je vais vous décrire l'ordre d'appellation de la page (en placeant le débug sur la première méthode de ma page (protected override void OnInit):

    1)protected override void OnInit
    2)protected override void OnLoad
    3)protected override void OnSaveStateComplete
    4)(dans ma page APSX dans une fonction JS) var jsObjet = document.getElementById("<%= hide.ClientID %>");
    5) $find('<%=WebPoubelle.ClientID%>'); (meme principe que point #4)
    6)protected override void OnInit
    ICI, lorsque le débug passe la ligne: base.OnInit(e);, je peux voir et interargir avec mon site, cependant le débug est toujours en train de travailler
    7)protected override void OnLoad
    8)protected override void OnSaveStateComplete
    9)(dans ma page APSX dans une fonction JS) var jsObjet = document.getElementById("<%= hide.ClientID %>");
    10) $find('<%=WebPoubelle.ClientID%>'); (meme principe que point #4)

    Et LA, Visual Studio me fait quitter le débug et m'affiche ma page Web

  8. #8
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Il semblerait que ton javascript soit à l'origine d'un postback quand tu appelles ta page. Commence par regarder de ce coté lá, à mon avis...

Discussions similaires

  1. image.fromfile Out Of Memory Exception
    Par jerem7w dans le forum VB.NET
    Réponses: 6
    Dernier message: 10/03/2019, 08h22
  2. Memoire JVM et out of memory exception
    Par aelmalki dans le forum Général Java
    Réponses: 5
    Dernier message: 20/03/2010, 22h58
  3. "out of memory exception" sur un picturebox[VB 2005.net]
    Par philippe carel dans le forum Windows Forms
    Réponses: 6
    Dernier message: 23/07/2006, 14h36
  4. Out of memory
    Par shurato dans le forum ANT
    Réponses: 1
    Dernier message: 10/11/2004, 16h19
  5. [JBuilder 8] Out of memory problem ...
    Par keros dans le forum JBuilder
    Réponses: 2
    Dernier message: 08/09/2003, 19h03

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