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 :

[debutant]comment modifier un datatab;e


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 69
    Par défaut [debutant]comment modifier un datatab;e
    bonjour,

    j'utilise visual studio 2005 C# et sql server 2005.
    J'ai une table qui renferme un champ statut de type int
    Ce type int correspond a une enumeration

    maintenant on me demande d'executer un query sur cette table et de renvoyer un datatable
    ok jusque la pas de probleme mais ou cela se complique enfin pour moi c'est que ma table ne doit pas etre sous forme:

    1
    5
    7

    mais plutot

    accepter
    refuser
    en attende

    car accepter, refuser, en attende corresponde a l'enumeration 1, 5 , 7

    Avez vous une idée de comment faire pour modifier mon datatable ?

    je vous remercie
    christophe

  2. #2
    Membre expérimenté Avatar de AJemni
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2008
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2008
    Messages : 242
    Par défaut
    Je pense, si j'ai bien compris, qu'il est preferable de modifier votre requête sql en utilisant la clause "case" que de modifier la "DataTable".
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SELECT 
    CASE statut
    	WHEN 1 THEN 'accepter'
    	WHEN 5 THEN 'refuser'
    	WHEN 7 THEN 'en attende'
    END statut
    FROM NomTable 
    WHERE Condition

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 69
    Par défaut
    salut,

    oui ton exemple me parait en plus facile a mettre en oeuvre, faut juste que je rajoute un parametre car on a langue en plus.

    Mais imaginons qu'on ajoute une enumeration il faudra SE SOUVENIR de cette store procedure ;-) et la mettre a jour!

    C'est peut etre pas l'ideal mais je continue a chercher a moyen
    si tu as d'autres idees n'hesites pas

    merci pour tout
    Christophe

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 69
    Par défaut
    salut salut,

    pour info, c'est que j'ai fait

    j'ai cree une store procedure avec un parametre qui me ramene un datatable uniquement avec mon int qui correspond a mon enum !

    ensuite j'ai cree une methode qui parcourre toutes les lignes de ma datatable et je caste le int en enum et je fais un foreach et j'ajoute la colonne dans le datatable avec la traduction selon la langue de l'utilisateur !

    Merci pour tout
    Christophe

Discussions similaires

  1. Réponses: 7
    Dernier message: 10/03/2007, 17h29
  2. [debutant][VB] comment modifier les controlBox?
    Par mAAL dans le forum Windows Forms
    Réponses: 7
    Dernier message: 26/03/2006, 20h46
  3. Réponses: 2
    Dernier message: 12/01/2006, 08h34
  4. [Debutant] comment creer un Executable avec Jbuilder
    Par JavaEli dans le forum JBuilder
    Réponses: 10
    Dernier message: 29/03/2004, 11h22
  5. [debutant] Comment afficher un integer a l'ecran
    Par Johngame dans le forum DirectX
    Réponses: 1
    Dernier message: 05/06/2003, 20h35

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