Exemplo n.º 1
0
        /// <summary>
        /// supprime un stagiaire de la table Stagiaires de la BDD
        /// </summary>
        /// <param name="uneCleStagiaire">NumOSIA du stagiaire à supprimer</param>
        public static void SupprimeStagiaire(Int32 uneCleStagiaire)
        {
            // instancier le dbContext au besoin
            if (DonneesDAO.DbContextFormation == null)
            {
                DonneesDAO.DbContextFormation = new FormationsContainer();
            }

            // recherche l'Entity correspondant à la clé stagiaire fournie
            Stagiaires leStagiaire = DonneesDAO.DbContextFormation.StagiairesSet.Find(uneCleStagiaire);

            // supprime l'Entity du dbContext
            DonneesDAO.DbContextFormation.StagiairesSet.Remove(leStagiaire);
            // déclenche la MAJ sur SQL Server par le dbContext
            DonneesDAO.DbContextFormation.SaveChanges();
        }
Exemplo n.º 2
0
        /// <summary>
        /// insère un stagiaire dans la table Stagiaires de la BDD
        /// </summary>
        /// <param name="unStagiaire">objet MStagiaire correspondant</param>
        /// <param name="unCodeSection">identifiant de sa section</param>
        public static void InsereStagiaire(MStagiaire unStagiaire, MSection uneSection)
        {
            // instancier le dbContext au besoin
            if (DonneesDAO.DbContextFormation == null)
            {
                DonneesDAO.DbContextFormation = new FormationsContainer();
            }

            // rechercher l'Entity Section
            Sections laSection = DonneesDAO.DbContextFormation.SectionsSet.Find(uneSection.CodeSection);
            // instancie un Entity et le renseigne à partir du MStagiaire reçu
            Stagiaires unStagiaireEF = null; // pour compilateur

            if (unStagiaire is MStagiaireCIF)
            {
                unStagiaireEF = new StagiaireCIF(unStagiaire.NumOsia, unStagiaire.Nom, unStagiaire.Prenom,
                                                 unStagiaire.Rue, unStagiaire.Ville, unStagiaire.CodePostal,
                                                 unStagiaire.NbreNotes, Convert.ToDecimal(unStagiaire.PointsNotes), laSection,
                                                 ((MStagiaireCIF)unStagiaire).Fongecif, ((MStagiaireCIF)unStagiaire).TypeCif);
            }


            else
            {
                // cas d'un DE
                unStagiaireEF = new StagiaireDE(unStagiaire.NumOsia, unStagiaire.Nom, unStagiaire.Prenom,
                                                unStagiaire.Rue, unStagiaire.Ville, unStagiaire.CodePostal,
                                                unStagiaire.NbreNotes, Convert.ToDecimal(unStagiaire.PointsNotes), laSection,
                                                ((MStagiaireDE)unStagiaire).RemuAfpa);
            }

            try
            {
                // ajoute l'Entity au dbSet du dbContext
                DonneesDAO.DbContextFormation.StagiairesSet.Add(unStagiaireEF);
                // déclenche la MAJ sur BDD
                DonneesDAO.DbContextFormation.SaveChanges();
            }
            catch (Exception ex) // a ce niveau, erreur possible en cas de doublon
            {                    // avec un  autre stagiaire déjà chargé en mémoire
                throw ex;        // ou erreur d'accès à la BDD
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// modifie un stagiaire en BDD
        /// </summary>
        /// <param name="unStagiaire">la ref à l'objet Mstagiaire qui a subi des modifications</param>
        public static void ModifieStagiaire(MStagiaire unStagiaire)
        {
            // instancier le dbContext au besoin
            if (DonneesDAO.DbContextFormation == null)
            {
                DonneesDAO.DbContextFormation = new FormationsContainer();
            }

            // recherche l'Entity et la renseigne à partir du MStagiaire reçu
            Stagiaires leStagiaire = DonneesDAO.DbContextFormation.StagiairesSet.Find(unStagiaire.NumOsia);

            // renseigne les colonnes à partir de l’objet MStagiaire reçu

            leStagiaire.NomStagiaire        = unStagiaire.Nom;
            leStagiaire.PrenomStagiaire     = unStagiaire.Prenom;
            leStagiaire.rueStagiaire        = unStagiaire.Rue;
            leStagiaire.VilleStagiaire      = unStagiaire.Ville;
            leStagiaire.CodePostalStagiaire = unStagiaire.CodePostal;
            leStagiaire.PointsNotes         = (decimal?)unStagiaire.PointsNotes;
            leStagiaire.NbreNotes           = unStagiaire.NbreNotes;
            // champs spécifiques dans la table en fonction du type MStagiaire spécialisé : NB : non modifable actuellement sur le form
            if (leStagiaire is StagiaireCIF)
            {
                // cas d'un CIF
                ((StagiaireCIF)leStagiaire).Fongecif = ((MStagiaireCIF)unStagiaire).Fongecif;
                ((StagiaireCIF)leStagiaire).TypeCIF  = ((MStagiaireCIF)unStagiaire).TypeCif;
            }
            else
            {
                // cas d'un DE
                ((StagiaireDE)leStagiaire).RemuAfpa = ((MStagiaireDE)unStagiaire).RemuAfpa;
            }

            try
            {
                // déclenche la MAJ sur BDD par le dbContext
                DonneesDAO.DbContextFormation.SaveChanges();
            }
            catch (Exception ex) // a ce niveau, erreur possible en cas de doublon
            {                    // avec un  autre stagiaire déjà chargé en mémoire
                throw ex;        // ou erreur d'accès à la BDD
            }
        }