Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : cast spécifié non valide [ Base de données / Access ] (gabs77)

jeudi 13 décembre 2007 à 18:03:53 | cast spécifié non valide

gabs77

bonjour,
je débute en C# et j'ai rencontré un problème auquel je ne parviens à comprendre quelle est-elle.
voici le code ci dessous et le message est le suivant : "le cast spécifié n'est pas valide"
 
public void ChargerListBox(string strRequete)
        {
        try
            {
                OleDbConnection oConnection = new OleDbConnection(strConnexion);
                OleDbCommand oCommand = new OleDbCommand(strRequete, oConnection);
                oConnection.Open();
                OleDbDataReader oReader = oCommand.ExecuteReader();
                do
                {
                    LB.Items.Clear();
                    //        MessageBox.Show(oReader.GetName(0));
                    while (oReader.Read())
                    {
                        LB.Items.Add(oReader.GetString(0));
                    }
                }
               while (oReader.NextResult());
                oReader.Close();
                oConnection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("L'erreur suivante a été rencontrée :" + ex.Message);
            }
        }

jeudi 13 décembre 2007 à 18:52:49 | Re : cast spécifié non valide

Bidou

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Voire la documentation en ligne:
[ Lien ]

"No conversions are performed; therefore the data retrieved must already be a string.
Call IsDBNull to look for null values before calling this method."


-My Blog-

jeudi 13 décembre 2007 à 23:50:31 | Re : cast spécifié non valide

TheSaib

Administrateur CodeS-SourceS
D'ailleurs au passage tu ne fermes pas tes connections et ne disposent pas tes objets, en cas d'echec ou pas.
Afin de garantir cette opération instancies tes objets connections et commande de la manière sivante :

using( OleDbConnection oConnection = new OleDbConnection(strConnexion))
{
                using (OleDbCommand oCommand = new OleDbCommand(strRequete, oConnection))
               {
               }
}



::|The S@ib|::
MVP C#.NET

vendredi 14 décembre 2007 à 11:35:19 | Re : cast spécifié non valide

gabs77

Merci Bidou

en effet j'avais des valeurs null ce qui me posait problème, ainsi j'ai pu répondre au problème

TheSaib, je prends en notes tes remarques afin d'améliorer mon code !!


vendredi 14 décembre 2007 à 11:40:19 | Re : cast spécifié non valide

gabs77

En revache je ne parvien spas à afficher dans des labels certains champs de ma base de données comme les champs numérique de ma base de données ACCESS pourtant il ne sont pas vide

vendredi 14 décembre 2007 à 18:53:35 | Re : cast spécifié non valide

TheSaib

Administrateur CodeS-SourceS
Une exception ... une erreur ....

::|The S@ib|::
MVP C#.NET

samedi 15 décembre 2007 à 09:44:35 | Re : cast spécifié non valide

gabs77

il me m'était une erreur de cast aussi mais j'ai compris mon erreur
 je faisai
label1.Text = oReader.GetString(0)
or il fallait faire ainsi
label1.Text = string.Format( "{0}" , oReader.GetInt16(0))


Par contre, j'ai encore une autre question :
comment est ce que l'on peut faire un switch avec un equals() ?
car je veux faire une fonction qui a comme paramètre une List<Label> et une requeteSQL
et cette fonction affichera respectivement les champs dans les labels correspondants
champ1 => label1
champ2 => label2

donc j'ai fait le script suivant :

do 
   {
   while(oReader.Read())
      {
      int i =0;
      while (oReader.FieldCount() > i)
         {
         // je veux faire quelquechose qui ressemble à cela
          switch (oReader.GetFieldType.Equals(???) )
            {
            case (string) :   Tlabel[i].Text = oReader.GetString(i);
            case (Int16) :   Tlabel[i].Text = string.Format("{0}",oReader.GetInt16(i));
            ....
            default : 
            }
         i++;
         }
      }
   }
while(oReader.NextResult());

samedi 15 décembre 2007 à 12:23:42 | Re : cast spécifié non valide

Bidou

Administrateur CodeS-SourceS
Réponse acceptée !
GetValue qui retourne un object ne pourrait-il pas faire l'affaire ?



-My Blog-

samedi 15 décembre 2007 à 13:19:16 | Re : cast spécifié non valide

gabs77

Effectiement Bidou, c'est bien plus simple ainsi !! Je ne sai pourquoi je sui parti compliqué



Cette discussion est classé dans : valide, oconnection, cast, spécifié, oreader


Répondre à ce message

Sujets en rapport avec ce message

[C#] [XML] dataSet [ADO.NET] [ par oboudou ] Je ai copier ce code d'un tutorial de developpez mais je n'est pas réussi a l'addapter pour lire une base de donné dans un fichier xml. Si on peut me excerption " Le cast spécifié n'est pas " lors de la création d'une interface COM [ par rasta_raf ] Bonjour !Voila j'ai besooin de votre aide si c'est possible ... je suis en train d'utiliser un objet COM à partir d'un Client en C Sharp, pour cela j' Cast d'une generic liste [ par blueangel ] bonjourest ce que quelqu'un pourrait corriger ce bout de code?public List GetAllBrands(){List ListBrand;//cette ligne de code provoque une erreur dan Comment vérifier un enregistrement sur BD avec C#.. [ par namous35 ] Bonjour les amis,Voilà je suis un débutant en C# et je demande de l'aide concernant une vérification si un enregistrement existe sur une table SQL ou invalid cast exception !? [ par jimmy69 ] Bonjour, J'ai un petit souci que je n'arrive pas a regler en net 1.1 ! J'ai une class Hand dans lequel on retrouve un arraylist m_cards que je rempli cast implicit [ par 6RatsMorts ] Bonjour, D'un côté j'ai une classe AddressMailCollection : ListDe l'autre j'ai une variable de type 'MatchCollection' résultant de la procédure Rege Pb CREATE TABLE [ par gabs77 ] Bonjour,   j'essaie de faire un script pour créer une new table dans une base de donnée access et j'ai l'erreur suivante :   L'erreur suivante a été r PB requete [ par gabs77 ] Bonjour,j'ai un problème avec l'execution d'une requete en C# l'adresse de la bdd est bonne et la requete est bonne aussi .Le souci est que l'exécutio Cast générique [ par pcayrol ] Bonjour, Voici mon souci : J'ai une classe Modele qui contient un int* pBuffer. J'ai aussi défini plusieurs structure STRUCT 1, STRUCT 2, etc... J'ins application multi cast [ par RV2931 ] Bonjour,ça fait un moment que je me pose la question : "Comment fait-on pour écouter et émettre du multi-cast???"Parce qu'au niveau du protocole il y


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,421 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.