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 :

Appel d'une methode depuis une autre page


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut Appel d'une methode depuis une autre page
    Bonjour à tous!
    J'ai une page(xxx.aspx)qui a une method method().Je veux appeller cette method depuis une autre page(yyy.aspx).Le class pour pour ces pages est suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public partial class xxx :System.Web.UI.Page
    {
    }
     
    public partial class yyy:System.Web.UI.Page
    {
    }
    Est-ce que ce possible de faire ça ?
    Merci d'avance !

  2. #2
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Si tu instancies ta classe je ne vois pas pourquoi tu ne pourrai pas appeler ta methode.

    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
     
        public partial class xxx : System.Web.UI.Page
        {
            public void MaMethodeXXX()
            {
     
            }
        }
        public partial class yyy : System.Web.UI.Page
        {
            public void Test()
            {
                xxx MyClassXXX = new xxx();
                MyClassXXX.MaMethodeXXX();
            }
        }
    Cependant garde a l'esprit que si elle en protected ou private...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut
    Mais j'arrive pas instancer le class objet.

  4. #4
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Salut,

    Tout d'abord, il faut que la classe soit visible (ne pas oublier les imports qui vont bien).
    Ensuite, il faut que la methode soit visible (public ou internal si dans le meme namespace).
    Enfin, il faut que la page que tu veux appeler soit instanciée ou que la methode soit statique.

    Le mieux, c'est de dire ce que tu veux faire exactement et meme de poster le code de ta fonction parce que si tu poses une question sur un forum, j'imagine que la reponse n'est pas aussi simple... Et ca sent l'erreur de conception.

    a+

  5. #5
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Tu peux nous montrer les NameSpace des deux classes celle qui contient la méthode a laquelle tu veux accéder et celle qui va appeler cette méthode ?

    Si on part du principe que tu as regarder l'exemple que je t'ai donné et que tu as bien vérifier que les mots clé sont bon alors CQFD ca vient du NameSpace :p

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public partial class test1 : System.Web.UI.Page {}
     
    public partial class horaire : System.Web.UI.Page {
    private void dgHoraires_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    }

  7. #7
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Et tu veux donc appeler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    private void dgHoraires_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    }
    depuis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public partial class test1 : System.Web.UI.Page {}

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut
    oui tout à fait !

  9. #9
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Dis moi poulet. Y a rien qui te choque ?

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut
    j'ai inséré la ligne suivante dans test1.aspx.ce:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    horaires xxx = new xxx();
    xxx.dgHoraires_DeleteCommand();
    Mais il affiche une message d'erreur !

  11. #11
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Normal. Ta méthode est privée. Commence par la mettre en public. Ensuite au niveau de ta méthode. C'est une méthode avec des paramètres qui ne sont pas optionnel. Si tu ne lui donne pas les arguments Levée d'exception d'office.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 63
    Points : 40
    Points
    40
    Par défaut
    Il a affiché :
    Le type ou le nom d'espace de noms 'horaires' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)

  13. #13
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Citation Envoyé par giraud vias Voir le message
    Il a affiché :
    Je suis desolé mais la je ne comprends plus du tout Envoie moi tous le code que tu as j'ai besoin de reproduire ton erreur.

  14. #14
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par Proteus91 Voir le message
    Je suis desolé mais la je ne comprends plus du tout Envoie moi tous le code que tu as j'ai besoin de reproduire ton erreur.
    Nan mais plutot que mettre un pansement sur une jambe de bois, c'est la méthodologie qu'il faut revoir
    Quel est le besoin derrière ce tour de passe passe?

  15. #15
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    Qu'est ce que tu as contre les tours de passe passe Alors si tu veux mon avis. Attends bouge pas je sors ma boule cristale.

    "J'ai une methode dans ma classe A, liée a la grid de ma premiere page. Vue que la grid de ma deuxieme pages fait a peu de chose pres la meme chose. Je me suis dit que je pouvais ré utiliser la méthode que j'ai deja ecrite."

    Alors Pit chui convainquant :p

  16. #16
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    A mon avis, un petit cours de csharp ne serait pas de trop... Parce que la, il y a des erreurs basiques, de la conception bancale, bref, faut revoir la base...

    Parce que s'il faut revenir sur private, protected et tous les mots clé, ce post risque d'etre long (et inutile).

  17. #17
    Membre actif
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Points : 275
    Points
    275
    Par défaut
    "C'est pas faux"

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

Discussions similaires

  1. Appel d'une methode depuis d'autre class
    Par giraud vias dans le forum C#
    Réponses: 3
    Dernier message: 28/12/2017, 14h17
  2. Réponses: 8
    Dernier message: 05/07/2011, 11h51
  3. Réponses: 14
    Dernier message: 10/09/2009, 19h08
  4. Réponses: 2
    Dernier message: 26/11/2007, 12h22

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