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

C# Discussion :

dataView filtre et format nom de colonne


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2005
    Messages : 98
    Par défaut dataView filtre et format nom de colonne
    Bonjour,

    J'utilise un dataView qui me permet de filtrer des données en provenance d'un DataTable mais le soucis est que le nom des colonnes peut contenir n'importe quel charactère spécial (parenthèse, quote, etc etc etc ...)

    Bref voici ce que je fais :

    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
                DataView view = null;
                string rowFilter = "";
     
                if (globalGroup == null)
                    return view;
                if (groupState == null || groupState.EquipmentCharacteristics == null)
                    return view;
     
     
                foreach (Characteristic globalCharac in globalGroup.Characteristics)
                {
                    foreach (EquipmentStateCharacteristic eqStateCharac in groupState.EquipmentCharacteristics)
                    {
                        if (eqStateCharac.CharacDescriptor.Id == globalCharac.ConfCharac.Descriptor.Id)
                        {
                            if (eqStateCharac.CharacteristicValue != null && !globalCharac.IsFreeValue)
                            {
                                if (!string.IsNullOrEmpty(rowFilter))
                                {
                                    rowFilter += "AND ";
                                }
                                rowFilter += globalCharac.ConfCharac.Descriptor.Id + " = '" + eqStateCharac.CharacteristicValue.Value + "' ";
                            }
                            break;
                        }
                    }
                }
                view = new DataView(globalGroup.DtTable, rowFilter, globalGroup.Characteristics[0].ConfCharac.Descriptor.Id, DataViewRowState.CurrentRows);
    j'ai donc une erreur à la création du dataView puisque le filtre n'est pas bon (par exemple le filtre contient :
    toto_(mm) = '100A'
    )

    Merci d'avance pour ceux qui auraient une solution (formatter les charactères spéciaux ? Autre chose ? :!)

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Mars 2005
    Messages : 98
    Par défaut
    Solution trouvé...

    Noms de colonne entre crochet c'est simplement du SQL donc ca marche comme du SQL...

    Merci quand même pour ceux qui ont regardé ^^"

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

Discussions similaires

  1. [DATA] Filtre sur nom des colonnes
    Par thtghgh dans le forum SAS Base
    Réponses: 1
    Dernier message: 03/02/2014, 09h24
  2. Réponses: 1
    Dernier message: 28/12/2012, 11h01
  3. Réponses: 1
    Dernier message: 23/02/2012, 22h17
  4. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  5. Mauvais noms de colonnes lors d'une requête
    Par nmathon dans le forum Bases de données
    Réponses: 2
    Dernier message: 09/04/2004, 07h27

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