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

JavaScript Discussion :

[AJAX] [Method error 500] sur un CascadingDropDown


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 73
    Points
    73
    Par défaut [AJAX] [Method error 500] sur un CascadingDropDown
    a tous!

    Voilou j'essai de mettre en place un CascadingDropDrown sur mon site. Mais voila le hic, c'est que mes données s'affiche correctement dans la premiere dropdownlist mais dans les deux suivantes il est affiché "[Method error 500]".

    Voici mon code dans le WebService si cela peut servir a quelqu'un

    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
     
            [WebMethod]
            [System.Web.Script.Services.ScriptMethod]
                    public CascadingDropDownNameValue[] GetModelByCar(string knownCategoryValues, string category)
                    {
                        string[] _categoryValues = knownCategoryValues.Split(':', ';');
     
                        int _carID = Convert.ToInt32(_categoryValues[1]);
     
                        List<CascadingDropDownNameValue> values = new List<CascadingDropDownNameValue>();
     
                        DataSet1TableAdapters.ModelTableAdapter ModelAdapter = new DataSet1TableAdapters.ModelTableAdapter();
     
                        foreach (DataRow dr in ModelAdapter.GetModelByCar(_carID))
                        {
                            values.Add(new CascadingDropDownNameValue(dr["Model"].ToString(), dr["ID_Model"].ToString()));
                        }
     
                        return values.ToArray();
                    }
    En attendant vos proposition ...

  2. #2
    Membre averti Avatar de jmulans
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 397
    Points : 383
    Points
    383
    Par défaut
    toujours avec ce probleme ?
    en cherchant sur google j'ai trouvé ça http://dognet.wordpress.com/2006/12/...hod-error-500/
    si tu parles anglais...

  3. #3
    Membre régulier Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 73
    Points
    73
    Par défaut
    Merci beaucoup pour ton lien il est instructif mais il ne m'a pas beaucoup aider a vrai dire

    Puis l'anglais... Je le comprend mais apres si il faut comprend ET l'anglais ET le code... mdr je suis larguer complet

  4. #4
    Membre régulier Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 73
    Points
    73
    Par défaut
    Ah oui et pour le peu que j'ai compris c'est deja tous fait pareille sur mon WebService donc je pense que le probleme viendrai d'ailleur...

  5. #5
    Membre régulier Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 73
    Points
    73
    Par défaut
    Voila le topic est resolu!
    Voici le code qui fonctionne :

    Mais avant il fo savoir que :
    - mon DataTable Car possede 2 colonnes (ID_Makes et Makes_Names)
    - mon DataTable Model possede 4 colonnes (ID_Model, Model_Name, ID_Make et ID_Color)
    - mon DataTable Color possede 2 colonnes (ID_Color et Color_Name)

    Ma page .aspx :
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    <body>
        <form id="form1" runat="server">
            <asp:ScriptManager ID="ScriptManager1" runat="server" />
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:Label ID="Label1" runat="server" Width="294px"></asp:Label>
                </ContentTemplate>
            </asp:UpdatePanel>
                    Make :<br />
                    <asp:DropDownList ID="ddlMake" runat="server" Width="210px"/><br />
                    <asp:ObjectDataSource ID="ods_Cars" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="GetAllCars" TypeName="dsCarsTableAdapters.CarsTableAdapter"></asp:ObjectDataSource> 
                &nbsp;<br/>
                    Model :
                    <br />
                    <asp:DropDownList ID="ddlModel"
            runat="server" Width="210px"/><br />
                    <br/>
                    Color :<br />
                    <asp:DropDownList ID="ddlColor"
            runat="server" Width="210px"/>
                    .<br />
            <br />
            <asp:Button ID="Button1"
            runat="server" Text="Submit" Width="210px" /><br />
                    <br />
                    <br />
                    <ajaxToolkit:CascadingDropDown ID="CascadingDropDown1" runat="server" Category="Make" LoadingText="Recherche..." PromptText="Selectionner un fabricant" ServiceMethod="GetMakes" ServicePath="WebService.asmx" TargetControlID="ddlMake"/>
                    <ajaxToolkit:CascadingDropDown ID="CascadingDropDown2" runat="server" Category="Model" LoadingText="Recherche..." ParentControlID="ddlMake" PromptText="Selectionner le model" ServiceMethod="GetModelByCar" ServicePath="WebService.asmx" TargetControlID="ddlModel"/>
                    <ajaxToolkit:CascadingDropDown ID="CascadingDropDown3" runat="server" Category="Color" LoadingText="Recherche..." ParentControlID="ddlModel" PromptText="Selectionner la couleur" ServiceMethod="GetColorByModel" ServicePath="WebService.asmx" TargetControlID="ddlColor"/>
     
        </form>    
    </body>
    Le WebService.cs :
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
    using System;
    using System.Web;
    using System.Collections;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    using System.Collections.Generic;
    using AjaxControlToolkit;
    using System.Data;
    using System.Data.SqlClient;
    using System.Collections.Specialized;
    using DataSet1TableAdapters;
     
    /// <summary>
    /// Description résumée de WebService
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.Web.Script.Services.ScriptService]
    public class WebService : System.Web.Services.WebService
    {
     
        public WebService ()
        {
     
            //Supprimez les marques de commentaire dans la ligne suivante si vous utilisez des composants conçus 
            //InitializeComponent(); 
        }
     
     
        [WebMethod]
        [System.Web.Script.Services.ScriptMethod]
            public CascadingDropDownNameValue[] GetMakes(string knownCategoryValues, string category)
            {
     
                List<CascadingDropDownNameValue> _carModels = new List<CascadingDropDownNameValue>();
     
                DataSet1TableAdapters.MakesTableAdapter Makes = new DataSet1TableAdapters.MakesTableAdapter();
     
                foreach (DataRow _row in Makes.GetMakes())
                {
                    _carModels.Add(new CascadingDropDownNameValue(_row["Makes_Name"].ToString(), _row["ID_Makes"].ToString()));
                }
     
                return _carModels.ToArray();
            }
     
            [WebMethod]
            [System.Web.Script.Services.ScriptMethod]
                    public CascadingDropDownNameValue[] GetModelByCar(string knownCategoryValues, string category)
                    {
                        string[] _categoryValues = knownCategoryValues.Split(':', ';');
     
                        int _carID = Convert.ToInt32(_categoryValues[1]);
     
                        List<CascadingDropDownNameValue> values = new List<CascadingDropDownNameValue>();
     
                        DataSet1TableAdapters.ModelTableAdapter ModelAdapter = new DataSet1TableAdapters.ModelTableAdapter();
     
                        foreach (DataRow dr in ModelAdapter.GetModelByCar(_carID))
                        {
                            values.Add(new CascadingDropDownNameValue(dr["Model_Name"].ToString(), dr["ID_Color"].ToString()));
                        }
     
                        return values.ToArray();
                    }
     
     
                [WebMethod]
                [System.Web.Script.Services.ScriptMethod]
                    public CascadingDropDownNameValue[] GetColorByModel(string knownCategoryValues, string category)
                    {
     
                        string[] _categoryValues = knownCategoryValues.Split(':', ';');
     
                        int _ColorID = Convert.ToInt32(_categoryValues[3]);
     
                        DataSet1TableAdapters.ColorTableAdapter adapter = new DataSet1TableAdapters.ColorTableAdapter();
     
                        List<CascadingDropDownNameValue> values = new List<CascadingDropDownNameValue>();
     
                        foreach (DataRow dr in adapter.GetColorByModel(_ColorID))
                        {
                            values.Add(new CascadingDropDownNameValue(dr["Color_Name"].ToString(), dr["ID_Color"].ToString()));
                        }
     
                        return values.ToArray();
                    }
        }
    Et pour afficher votre resultat c'est par la ... :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        protected void Page_Load(object sender, EventArgs e)
        {
     
     
        }
     
        protected void Button1_Click(object sender, EventArgs e)
        {
           Label1.Text = ("Vous avez selectionner une " + ddlMake.SelectedItem.ToString() + " " + ddlModel.SelectedItem.ToString() + " de couleur " + ddlColor.SelectedItem.ToString());
        }
    }
    Voila!!! Un beau codage pour un cascadingdropdown tout joli


    en esperant que ce code en débloquera plus d'un!


  6. #6
    Membre averti Avatar de jmulans
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 397
    Points : 383
    Points
    383
    Par défaut
    il t'as servi mon lien ou j'ai encore servi a rien ?

  7. #7
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par jmulans
    il t'as servi mon lien ou j'ai encore servi a rien ?
    Citation Envoyé par LaDeveloppeuse
    Merci beaucoup pour ton lien il est instructif mais il ne m'a pas beaucoup aider a vrai dire
    Pas d'ambigüité

  8. #8
    Membre averti Avatar de jmulans
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 397
    Points : 383
    Points
    383
    Par défaut
    ok je sert a rien...


  9. #9
    Membre régulier Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 73
    Points
    73
    Par défaut
    mdr mais non tu sert pas a rien
    tu ma mis sur le chemin c'est grace a toi que jai trouver


  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour, je sais que ce topic date mais il est toujours très utile je vous l'assure.
    Cependant, J'ai essayé de faire la même chose mais il ne me retourne pas ce que je veux, de plus, je n'arrive pas a récupérer ceci :

    int _carID = Convert.ToInt32(_categoryValues[1]);

    Mais en même temps, je n'ai pas bien compris tout le code.

    Si je poste ce message, c'est pour avoir de plus amples informations s'il vous plaît.

    Merci d'avance!

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

Discussions similaires

  1. HTTP ERROR 500 sur NGINX
    Par Naruhiko315 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 5
    Dernier message: 22/02/2017, 02h02
  2. problème sur SUSE: error 500 sur nagios
    Par med.oujda dans le forum SUSE
    Réponses: 2
    Dernier message: 20/05/2014, 19h48
  3. Method Error 500
    Par bonomsoleil dans le forum Services Web
    Réponses: 1
    Dernier message: 23/12/2009, 00h09
  4. Error 500 sur url avec &
    Par gregmtl dans le forum IIS
    Réponses: 1
    Dernier message: 21/07/2008, 18h15
  5. [AJAX] Erreur Serveur 500 sur script perl
    Par fabrice91 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/06/2007, 13h21

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