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 :

Synthaxe incorrect vers ')' pour un DataFill


Sujet :

ASP.NET

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut Synthaxe incorrect vers ')' pour un DataFill
    a tous!

    J'ai creer une appli avec un repeater mais lorsque je l'execute cela me dit l'erreur suivante :

    Synthaxe incorrect vers 'entreprise'.
    voici la structure de mon repeater :

    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
     
           <asp:Repeater id="RptTabApp" runat="server">
                <HeaderTemplate>
                    <table bgcolor="silver" width="300">
                        <tr bgcolor="#0000FF" >
                            <td align="center">
                                <font color="white"><b>Nom</b></font>
                            </td>
                            <td align="center">
                                <font color="white"><b>Prénom</b></font>
                            </td>
                            <td align="center">
                                <font color="white"><b>Contrat</b></font>
                            </td>
                            <td align="center">
                                <font color="white"><b>LV1</b></font>
                            </td>
                            <td align="center">
                                <font color="white"><b><asp:Label ID="lblDate" runat="server" Text="Votre date"/></b></font>
                            </td>
                            <td align="center">
                                <font color="white"><b>Observations</b></font>
                            </td>
                        </tr>
                </HeaderTemplate>
                <ItemTemplate>
                    <tr bgcolor="#FFFFFF">
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "app_lastname") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "app_firstname") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "contrat") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "LV1") %>
                        </td>
                        <td>
                             <asp:DropDownList ID="DropDownList1" runat="server">
                                <asp:ListItem Selected="True">Présent</asp:ListItem>
                                <asp:ListItem>Absent</asp:ListItem>
                                <asp:ListItem>Retard</asp:ListItem>
                                <asp:ListItem>Dispensé</asp:ListItem>
                            </asp:DropDownList>
                        </td>
                        <td>
                            <asp:TextBox ID="txtObservation" runat="server" TextMode="MultiLine"/>
                        </td>
                    </tr>
                </ItemTemplate>
                <AlternatingItemTemplate>
                    <tr bgcolor="#00CCFF">
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "app_lastname") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "app_firstname") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "contrat") %>
                        </td>
                        <td>
                            <%# DataBinder.Eval(Container.DataItem, "LV1") %>
                        </td>
                        <td>
                             <asp:DropDownList ID="DropDownList1" runat="server">
                                <asp:ListItem Selected="True">Présent</asp:ListItem>
                                <asp:ListItem>Absent</asp:ListItem>
                                <asp:ListItem>Retard</asp:ListItem>
                                <asp:ListItem>Dispensé</asp:ListItem>
                            </asp:DropDownList>
                        </td>
                        <td>
                            <asp:TextBox ID="txtObservation" runat="server" TextMode="MultiLine"/>
                        </td>
                    </tr>
                </AlternatingItemTemplate>
                <FooterTemplate>
     
                    </table>
                </FooterTemplate>
            </asp:Repeater>
    Et voici le code behind en C# pour remplir le repeater:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SqlConnection SqlConn = new SqlConnection("Data Source=PROD006\\SQLEXPRESS;uid=PROD006\\nom-prenom;pwd=******;Initial Catalog='STAGE_PROJET.MDF';Integrated Security=True");
                string SqlCom = "SELECT [Apprenti.app_lastname], [Apprenti.app_firstname], [Apprenti.LV1], [Apprenti.contrat] FROM Vue_Apprenti WHERE ([Classe.group_name] = ' " + GroupList.SelectedItem + " ')";
                SqlDataAdapter SqlDatAd = new SqlDataAdapter(SqlCom, SqlConn);
                DataSet datSet = new DataSet();
                SqlDatAd.Fill(datSet);
    
                PagedDataSource objPds = new PagedDataSource();
                objPds.DataSource = datSet.Tables[0].DefaultView;
                objPds.AllowPaging = false;
    
                RptTabApp.DataSource = objPds;
                RptTabApp.DataBind();
    il me met l'erreur sur la ligne en rouge biensure...

  2. #2
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Par défaut
    dans ta requete il doit y avoir une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string SqlCom = "SELECT [Apprenti.app_lastname], [Apprenti.app_firstname], [Apprenti.LV1], [Apprenti.contrat] FROM Vue_Apprenti WHERE ([Classe.group_name] = " + GroupList.SelectedItem + ")";
    c'est quoi au fait Apprenti?

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut
    Non j'ai resolu le probleme

    En faite dans ma base de données j'ai le premier champ ou il y a un " d' " et lors de l'execution du la requete sql, le programme pense que l'apostrophe du " d' " est là pour refermer la chaine de caracteres... pas futfute le truc

    vous auriez pas un moyen de pouvoir garder cette appostrophe sans poser de probleme?

  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
    Il suffit que tu la double avec un replace pour que cela fonctionne

  5. #5
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Par défaut
    tu fais un replace(','')

  6. #6
    Membre expérimenté Avatar de ccambier
    Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Octobre 2006
    Messages : 256
    Par défaut
    si le problème vient de GroupList.SelectedItem il est simple à resoudre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GroupList.SelectedItem.ToString().Replace("'","''")
    donc simplement en doublant les quote

  7. #7
    Membre confirmé Avatar de LaDeveloppeuse
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Par défaut
    C'est nikel! ca marche comme sur des souchis! Vous etes des boss

    Merci!!!!!

  8. #8
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Citation Envoyé par ccambier
    si le problème vient de GroupList.SelectedItem il est simple à resoudre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GroupList.SelectedItem.ToString().Replace("'","''")
    donc simplement en doublant les quote
    Aaarg !
    La meilleure solution pour ce genre de problème est d'utiliser des paramètres SQL
    Regarde du côté des SqlParameter/OracleParameter/IDataParameter.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string SqlCom = "SELECT [Apprenti.app_lastname], [Apprenti.app_firstname], [Apprenti.LV1], [Apprenti.contrat] FROM Vue_Apprenti WHERE ([Classe.group_name] = @GROUPNAME)";
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

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

Discussions similaires

  1. Syntaxe incorrecte vers ')'
    Par Nako_lito dans le forum Services Web
    Réponses: 2
    Dernier message: 16/06/2008, 11h31
  2. Syntaxe incorrecte vers le mot clé 'case'.
    Par anayathefirst dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/08/2007, 18h25
  3. Syntaxe incorrecte vers 'where'.
    Par lepeintre dans le forum ASP
    Réponses: 15
    Dernier message: 19/05/2005, 11h57

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