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 :

[C# LocalDB EF] Problème ajout d'un enregistrement


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Ain (Rhône Alpes)

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

    Informations forums :
    Inscription : Janvier 2015
    Messages : 2
    Par défaut [C# LocalDB EF] Problème ajout d'un enregistrement
    Bonjour à tous,

    Je suis actuellement entrain de réalisé un mini projet, je dois utilisé une base de donnée localdb sous visual studio avec ADO.NET Entity Framework.

    J'ai créé la base de donnée, puis le model Entity (nom: TaxiDriverModel) (nom entities : TaxiDriverEntities1). Jusque là aucun problème.

    Mon problème et que je n'arrive pas à ajouter un enregistrement dans ma table "driver"...

    Mon fichier Program.cs:

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
     
    namespace TaxiDriverApp
    {
        class Program
        {
     
            static void Main(string[] args)
            {
                Console.WriteLine("\n");
                Console.WriteLine(" TAXI DRIVER APPLICATION\n");
                Console.WriteLine(" #######################\n");
                Console.WriteLine("\n");
                Console.WriteLine(" 1: Add a driver\n");
                Console.WriteLine(" 2: Edit a driver\n");
                Console.WriteLine(" 3: Add a trip\n");
                Console.WriteLine(" 4: Import trips\n");
                Console.WriteLine(" 5: View all trips for a driver\n");
                Console.WriteLine("\n");
                Console.WriteLine("What's your choice ?\n");
     
                string choix = Console.ReadLine();
     
                if (choix == "1")
                {
                    Console.Clear();
                    Console.WriteLine("ADD DRIVER\n");
                    Console.WriteLine("###########\n");
                    Console.WriteLine("\n");
                    Console.WriteLine("Last Name ?");
                    string lastName = Console.ReadLine();
                    Console.WriteLine("\n");
                    Console.WriteLine("FirstName ?");
                    string firstName = Console.ReadLine();
                    Console.WriteLine("\n");
                    Console.WriteLine("Car model ?");
                    string carModel = Console.ReadLine();
                    Console.WriteLine("\n");
                    Console.WriteLine("Age ?");
                    int age = int.Parse(Console.ReadLine());
                    Console.WriteLine("\n");
                    Console.WriteLine("Salary ?");
                    int salary = int.Parse(Console.ReadLine());
                    Console.WriteLine("\n");
                    Console.WriteLine("Campus ?");
                    string campus = Console.ReadLine();
                    Console.WriteLine("\n");
                    Console.WriteLine("City ?");
                    string city = Console.ReadLine();
     
                    TaxiDriverApp.AddDriver queryAdd = new AddDriver();
                    queryAdd.AddNewDriver(lastName, firstName, carModel, age, salary, campus, city);
     
                }
            }
        }
    }

    Mon fichier addDriver.cs :

    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
    35
    36
    37
    38
    39
    40
    41
    42
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Entity;
    using System.Data.SqlClient;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
     
    namespace TaxiDriverApp
    {
        class AddDriver
        {
            private TaxiDriverEntities1 ctx = new TaxiDriverEntities1();
     
            public void Afficher(string lastName, string firstName, string carModel, int age, int salary, string campus, string city)
            {
     
            }
     
            public void AddNewDriver(string lastName, string firstName, string carModel, int age, int salary, string campus, string city)
            {
                try
                {
                    driver newDriver = new driver();
                    newDriver.LastName = lastName;
                    newDriver.FirstName = firstName;
                    newDriver.CarModel = carModel;
                    newDriver.Age = Convert.ToString(age);
                    newDriver.Salary = Convert.ToString(salary);
                    newDriver.Campus = campus;
                    newDriver.City = city;
                    ctx.driver.Add(newDriver);
                    ctx.SaveChanges();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }

    Ma base de donnée :

    Table: driver / Table: trip Table: tampon

    Plusieurs jours que je prend la tête dessus et aucun moyen de trouver un truc sur google ...



    Merci d'avance

    Timothé Mauzet


    PS: Visual Studio me sort aucune erreur ...

  2. #2
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Salut,

    Allons par étape car le code me semble plutôt correct.

    Est-ce que tu as bien été vérifié dans ta base que la ligne n'est pas présente ?

    Sinon sur la méthode "SaveChanges" tu peux savoir le nombre de ligne affectée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int addedlines = ctx.SaveChanges();

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Ain (Rhône Alpes)

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

    Informations forums :
    Inscription : Janvier 2015
    Messages : 2
    Par défaut
    Oui, aucun enregistrement dans la base de donnée...

    En modifiant la ligne pour ajouter la variable puis un "Console.writeLine", cela me retourne "1"...

    Là, je ne comprend pas ...

  4. #4
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Hum...

    Est-ce que tu peux faire un test :

    Dans ta classe "AddDriver"
    - Ajouter une méthode test
    - Appeller la méthode au début de ton programme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class AddDriver
        {
            private TaxiDriverEntities1 ctx = new TaxiDriverEntities1();
     
            public void Test()
            {
                   var drivers = ctx.driver.ToList();
                   Console.WriteLine(drivers.Count());
            }
        }
    Sinon tu peux aller voir en debug ce que contient "drivers"

    PS : Il peut y avoir des petites erreurs j'écris le code à l’arrache...

Discussions similaires

  1. [MySQL] Problème : ajouter un enregistrement dans une table
    Par dicdic dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 17/01/2012, 19h04
  2. [AC-2003] Problème ajout d'enregistrement
    Par Shankara dans le forum Requêtes et SQL.
    Réponses: 18
    Dernier message: 12/07/2009, 23h44
  3. Réponses: 8
    Dernier message: 29/08/2008, 14h53
  4. [MySQL] Problème d'ajout de nouvel enregistrement
    Par bosserieux dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 17/01/2008, 10h54
  5. problème : Ajouter un nouvel enregistrement
    Par rob2-9 dans le forum Access
    Réponses: 2
    Dernier message: 10/08/2006, 17h52

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