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 :

Passer de string a variable ?


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 52
    Par défaut Passer de string a variable ?
    Bonjour à tous!

    Donc voilà, petit dilemme qui s'impose devant moi dont je n'arrive pas a trouver de solution concrète...

    En fait, j'ai un objet, disons pour le cas de l'exemple un élève.
    Je cherche un moyen qu'à partir d'une string provenant d'une BD, je puisse aller changer une valeur appartenant a un élève, admettons
    Eleve.Groupe = 5

    Je veux que dans ma BD je puisse avoir un moyen de déclencher une instruction qui fera que Eleve.Groupe incrémentera de 2

    Je ne sais pas trop si je suis clair... mais au bout du compte ou je voudrais en arriver c'est d'avoir une fonction avec laquelle je pourrait, a partir d'une string par exemple valant "Eleve.Groupe" ainsi que "2" comme paramètre, modifié la valeur dans mon objet

    J'espère être assez clair, faut admettre que je suis moi-même un peu perdu


    Sous un merci d'avance,
    Amuny,

  2. #2
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut
    Honnêtement, là, le chinois passerait aussi....
    Essaie de tout recracher, de montrer des exemples et de ne pas trop faire de français...

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 337
    Par défaut
    Regarde du coté de la Réflexion, moi je l'utilise pour exécuter des méthodes d'une classe dont le nom est stocker dans ma base de donnée, je pense que tu peux par 'réflexion' modifier une variable de classe en ayant son nom et sa nouvelle valeur sous forme de string, mais je ne te garantis rien ....

    Par contre ce n'est pas si facile à assimiler -_-

    Bonne recherche et bonne chance !

  4. #4
    Membre habitué
    Inscrit en
    Décembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 12
    Par défaut Je me creuse la tête
    Bonjour,

    J'ai du m'arracher les cheveux pour rien ... j'ai pas compris ce que tu veux dire :

    1.
    ma BD je puisse avoir un moyen....
    tu veux avoir des procédures stockées ??? dans ce cas la pourquoi parles tu d'objets dans la mémoire?

    2. Si ce n'est pas des procedures stockées ou triggers de DB que tu cherches, Je présume que tu veux changer des propriétés d'un objet sans pour autant le connaitre (savoir de quel type il est ) : dans ce cas la la solution que t'a proposé notre ami est bonne. LA "REFLECTION".
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    object objetInconnu= MethodeQuiRenvoiObjet();
    Type t=objetInconnu.GetType();
    PropertyInfo pi= t.GetProperty("NomDeLaPropoAChanger");
    LeVraiTypeDeLaProp LeChamp= pi.GetValue(objetInconnu, null);
    la c'est un exemple pour récupérer la propriété d'un object avec la reflection.

    Ensuite t'as qu'à changer la valeur et la persister dans la BD. Pour cela tu as le choix entre un DAL (Data Access Layer) spécifique (que tu vas créer) ou l'utilisation d'ORM, ...

    Enfin tout cela pour dire que ta question n'est pas claire.

    Plus de détails s'il te plait.

    cordialement,

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 52
    Par défaut
    En fait je n'ai pas vraiment d'exemple de code puisque c'est exactement ce que je cherche

    En gros, j'ai ma BD ainsi constituée:

    TEleve
    --------------
    Nom, Prenom, Groupe...

    et ma classe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class Eleve
    {
        public string Nom { get; set; }
        public string Prenom { get; set; }
        public int Groupe { get; set; }
    ...
    }
    je voudrais avoir l'équivalent d'une fonction pouvant s'invoquer a peu près comme suit:
    ModifierEleve(Eleve, champ, valeur)
    soit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ModifierEleve(EleveCourrant, "Groupe", 2);
    "Eleve" contiendrais l'objet a modifié, la variable "champ" provenant de la BD qui contiendrais, par exemple, la string "Groupe", et la valeur, dans l'exemple du dessus 2.

    Et ceci aurai comme impact de modifier mon EleveCourrant.Groupe de 2.

    Ma problématique, c'est d'atteindre mon EleveCourrant.Groupe !

    J'espère avoir été plus clair... je continue a lire sur la réflexion en attendant si jamais ça se trouve être la solution :p

  6. #6
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 52
    Par défaut
    j'ai chercher pas mal dans la Reflection et dans toute sortes d'autre choses, mais malgré tout ça je n'arrive toujours pas
    Et je commence a m'écarter loin dans les pages de google :p

    Ca me parait pourtant invraisemblable que je sois le seul fou a avoir pensé a faire un truc comme ça, c'est rien d'ultra spécifique pourtant

Discussions similaires

  1. Réponses: 6
    Dernier message: 12/03/2006, 17h30
  2. passer une String en paramètre
    Par fabhxc dans le forum Langage
    Réponses: 11
    Dernier message: 28/12/2005, 15h46
  3. Passer la valeur dune variable javascript à une variable xsl
    Par nramariavelo dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 12/12/2005, 17h27
  4. Réponses: 1
    Dernier message: 15/04/2005, 11h30
  5. problème our passer des string dans tableau d'int
    Par Battosaiii dans le forum C++
    Réponses: 9
    Dernier message: 15/07/2004, 17h42

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