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 :

SqlDatasource avec paramètre C#


Sujet :

ASP.NET

Vue hybride

remy77 SqlDatasource avec paramètre... 18/07/2007, 00h06
X-Nem en c# ... 18/07/2007, 10h27
remy77 Solution C# de ddl avec... 18/07/2007, 10h56
lutecefalco :tagcode: 18/07/2007, 10h57
X-Nem la tu configures tout dans le... 18/07/2007, 11h14
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 46
    Par défaut SqlDatasource avec paramètre C#
    Bonjour,

    J'aimerai pouvoir passer en paramètre une valeur à mon SqlDataSource venant de mon code C#. J'utilise un SqlDataSource pour une ddlb avec le Select suivant :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT CodeEntreprise, NomEntreprise, CodeOperateurRR FROM dbo.Entreprise WHERE (CodeOperateurRR = ?) OR (999999 = ?) ORDER BY NomEntreprise

    Il y a 1 seul paramètre (utilsé 2 fois) de manière à me ramener un filtre sur le CodeOperateurRR (pour FMBr)ou tous les enregistrements sans filtre (en lui passant la valeur 999999). Je souhaite passer ce paramètre à partir de mon code C# au chargement de la page, voici mon code qui ne marche pas :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    string param = "999999";
    if (currentUser.CodeRole == "FMBr")
    {
    param = currentUser.CodeRef.ToString();
    }
    SqlDataSourceEnt.Parameters["?"].DefaultValue = param;
    ddlEntreprise.DataBind();
    en source j'ai aussi le bloc suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <SelectParameters>
    <asparameter Name="?" Type="Int32" />
    <asparameter Name="?" Type="Int32" />
    </SelectParameters>
    J'ai aussi testé en C# l'utilisation de SelectParameters sans succès. Pouvez-vous m'aider SVP ? J'ai cherché dans l'aide MSN et le forum en vain...Ma solution ultime serait de passer par un control (label) que je renseignerai dans mon code avec mon "param" et qui est reconnu comme contrôle dans le sqldatasource (ça marche mais c'est pas terrible !).

    Avez-vous une solution ?
    Merci d'avance pour votre aide.

  2. #2
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    173
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 173
    Par défaut
    en c#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sqldatasource.selectparameters.add("NOMDUPARAMETRE",chaine);
    ensuite tu executes ta requete sql
    ou tu databind

    NOMDUPARAMETRE CORRESPONDANT aux @NOMDUPARAMETRE DANS TA REQUETE SQL

    sinon autre solution
    passer par control caché : HiddenField et dans le code behind tu modifies sa valeur que tu recuperes via ta requete sql avec un selectparameters sur ton hiddenfield

  3. #3
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 46
    Par défaut Solution C# de ddl avec DataSource !
    Merci pour la réponse, mais j'ai trouvé une solution à mon problème !
    Il s'agissait de faire apparaitre dans une ddl une liste filtrée en fonction d'un paramètre (param) renseigné dans le code.
    En fait, je fais tout le SQL dans le code en C# avec un Datasource, voilà ce que cela donne :
    Code C# : 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
     
    using (OdbcConnection cnx = new OdbcConnection(System.Configuration.ConfigurationManager.ConnectionStrings["SybaseConnectionString"].ToString()))
                {
                    String sql = "SELECT CodeEntreprise, NomEntreprise, CodeOperateurRR ";
                    String from = "FROM Entreprise ";
                    String where = "WHERE (CodeOperateurRR = " + param + ") ";
                    where += "OR (999999 = " + param + ") ";
                    String ordre = "ORDER BY NomEntreprise";
     
                    sql += from + where + ordre;
     
                    OdbcDataAdapter apt = new OdbcDataAdapter(sql, cnx);
                    DataSet ds = new DataSet();
                    apt.Fill(ds);
     
                    ddlEntreprise.DataSource = ds;
                    ddlEntreprise.DataTextField = "NomEntreprise";
                    ddlEntreprise.DataValueField = "CodeEntreprise";
                    ddlEntreprise.DataBind();
     
                    if (currentUser.CodeRole == "ADMIN")
                    {
                        ddlEntreprise.Items.Insert(0, new ListItem("Toutes", "0"));
                    }
                }
    Avis à ceux que cela intéresse...
    NB : Dans le Design, je n'ai plus qu'un ddl sans aucune source de données.

  4. #4
    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

  5. #5
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    173
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 173
    Par défaut
    la tu configures tout dans le c# tu faisais comme je t'ai dit tu auras moins de ligne de code

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

Discussions similaires

  1. sqldatasource avec paramètre qui vaut null
    Par aurelien.tournier dans le forum ASP.NET
    Réponses: 4
    Dernier message: 17/01/2008, 11h56
  2. [VB.net] Thread avec paramètres
    Par WriteLN dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/04/2005, 17h42
  3. requête SQL avec paramètre en vb avec base de donnée SQL srv
    Par dialydany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 01/02/2005, 10h33
  4. [PL/SQL] Curseur avec Paramètre
    Par blids dans le forum Oracle
    Réponses: 5
    Dernier message: 10/10/2004, 20h07
  5. Réponses: 3
    Dernier message: 21/05/2003, 11h44

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