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# / SQLite-Net - Renvois d'un résultat unique au format String [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 2
    Par défaut C# / SQLite-Net - Renvois d'un résultat unique au format String
    Bonjour.

    Je me suis récemment mis à tripatouiller C# et SQLite-Net.

    Et bien entendu je rencontre un soucis...

    Je voudrais renvoyer le resultat unique d'une requète au format string, par une fonction.
    Voici le code à l'heure actuelle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public string Get_System_Name(SQLiteConnection dbConnexion_ss, long ID)
    {
            IEnumerable<SYSTEMES> Query_System = dbConnexion_ss.Query<SYSTEMES>("select * from SYSTEMES where SYSTEME_ID = ?", ID);
            foreach (var System in Query_System)
            {
                if (System.SYSTEME_ID == ID)
                {
                    return System.Nom_Courant.ToString();
                }
                else return null;
            }
    }
    La Colonne SYSTEME_ID de la table SYSTEMES a pour statuts [PrimaryKey, AutoIncrement] donc la requête ne peut renvoyer qu'un enregistrement.

    J'ai le message d'erreur suivant :"not all code paths return a value" (Les chemins de code ne retournent pas tous une valeur).

    Est ce que quelqu'un aurait une idée ?

  2. #2
    Membre Expert
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 941
    Par défaut
    return null; devrait être après le foreachOu avec LinQ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var result = Query_System.FirstOrDefault(x => x.ID == ID); // renvoie null si aucun objet n'a été retenu

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 2
    Par défaut
    Merci pour ton aide.

    Peux tu expliciter un peu plus stp ?

    J'ai résolu mon problème en utilisant la fonction ExecuteScalar :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public string Get_System_Name(SQLiteConnection dbConnexion_ss, long ID)
        {
            return dbConnexion_ss.ExecuteScalar<string>("select Nom_Courant from SYSTEMES where SYSTEME_ID = ?", ID);
     
        }

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

Discussions similaires

  1. Requete qui ne renvoie pas de résultat
    Par bruno782 dans le forum Requêtes
    Réponses: 6
    Dernier message: 01/08/2019, 13h39
  2. Réponses: 2
    Dernier message: 21/12/2006, 00h16
  3. mysql_fetch_assoc renvoi n - 1 résultats
    Par novices dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 27/09/2006, 14h55
  4. Réponses: 2
    Dernier message: 26/09/2006, 08h56
  5. Réponses: 5
    Dernier message: 16/02/2006, 16h06

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