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 :

Question Débutant récupérer l'attribut d'une variable de type objet


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pérou

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 15
    Par défaut Question Débutant récupérer l'attribut d'une variable de type objet
    Bonjour,

    Comment récuperer l'attribut d'une variable de type objet ?

    En plus clair, imaginons j'ai 2 classes :
    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
     
        public class JournalMensuelMagasin
        {
            public int Id { get; set; }
            [Required]
            public int Mois { get; set; }
            [Required]
            public int Annee { get; set; }
            [Required]
            public float ChifferAffaire { get; set; }
            [Required]
            public float CommissionMagasin { get; set; }
            public int TotalHeureTravailMagasin { get; set; }
            public virtual Magasin Magasin { get; set; }
     
            //public int Magasin_Id = 
     
            public enum MoisMag { Janvier= (int)1, Fevrier= (int)2, Mars= (int)3, Avril= (int)4, Mai= (int)5, Juin= (int)6, Juillet= (int)7, Aout= (int)8, Septembre= (int)9, Octobre= (int)10, Novembre= (int)11, Decembre= (int)12 };
     
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        public class Magasin
        {
            public int Id { get; set; }
            [Required]
            public String Nom { get; set; }
            public String Enseigne { get; set; }
            public virtual List<Personnel> Personnel { get; set; }
            public virtual List<JournalMensuelMagasin> JournauxMensuelMagasins { get; set; }
     
        }
    Je voudrais alors récupérer la valeur : Journal.Magasin_Id

  2. #2
    Membre émérite Avatar de Momoth
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2013
    Messages
    318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 318
    Par défaut
    Bonjour,

    Il va nous falloir plus d'information pour t'aider. Peux tu nous montrer l'endroit dans ton code où tu manipule l'instance de ton Journal ?

    Edit : Je viens de voir un autre de tes posts où tu essayes de voir si un journal existe. Si un journal a toujours un magasin, tu peux accéder à l'Id de celui ci en faisant : journal.Magasin.Id

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pérou

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 15
    Par défaut
    Merci pour ta réponse Momoth,

    Pour te répondre, voila la partie de ma Dal qui pose probleme:

    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
     
            public void AjouterJournal(int code, float chiffreAffaire, float commissionMagasin, int mois, int annee)
            {
                JournalMensuelMagasin journalMensuelMagasin = new JournalMensuelMagasin
                {
                    ChifferAffaire = chiffreAffaire,
                    CommissionMagasin = commissionMagasin,
                    Mois = mois,
                    Annee = annee,
                    Magasin = bdd.Magasins.First(m => m.Id == code)
                };
                Magasin magasin = bdd.Magasins.First(m => m.Id == code);
                if (magasin.JournauxMensuelMagasins == null)
                    magasin.JournauxMensuelMagasins = new List<JournalMensuelMagasin>();
               else //partie journalExiste()
                { 
                    var journalMensuelMagasinTrouve = bdd.JournauxMensuelsMagasins.FirstOrDefault(journalmensuelmagasin =>
                                    {
                                                return journalmensuelmagasin.Magasin.Id == code && journalmensuelmagasin.Annee == annee && // ici problème, expression lambda avec un corps d'instruction ne peut pas être converti en arborescence de l'expression
                                                       journalmensuelmagasin.Mois == mois;
                                            });
                                    if (journalMensuelMagasinTrouve != null)
                                        {
                                            journalMensuelMagasinTrouve.ChifferAffaire = chiffreAffaire;
                                            journalMensuelMagasinTrouve.CommissionMagasin = commissionMagasin;
                                            bdd.SaveChanges();
                                        }
     
     
                                    else{
     
                                    }
                    magasin.JournauxMensuelMagasins.Add(journalMensuelMagasin);
                    bdd.SaveChanges();
    Voila, en gros la methode AjouterJournal() devra pouvoir ajouter un journal dans la bdd et s'il existe déjà un journal avec les même dates, pouvoir l’écraser.
    Or, c'est juste la partie journalExiste() qui me pose problème

    Ps: J'ai du remplacer mes classes de bases avec celles que j'utilisent en vrai et vous montrer le code en entier, bien que ça va être plus compliquer, néanmoins je ne vous cacherai rien

  4. #4
    Membre très actif
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2016
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2016
    Messages : 154
    Par défaut
    Erreur

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Pérou

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2016
    Messages : 15

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

Discussions similaires

  1. Récupérer un entier dans une variable de type String
    Par JB122 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 06/06/2017, 00h21
  2. Réponses: 2
    Dernier message: 22/07/2011, 15h09
  3. Problème avec une variable de type objet
    Par mrocks dans le forum C#
    Réponses: 7
    Dernier message: 09/05/2009, 22h27
  4. Réponses: 7
    Dernier message: 30/06/2005, 10h06
  5. [Débutant] Récupérer les paramètres d'une routine
    Par nifty dans le forum Assembleur
    Réponses: 5
    Dernier message: 18/04/2005, 14h35

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