Problème en langage c# :System.NullReferenceException avec ue base de donéne Mic [Résolu]

avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention - 10 avril 2006 à 12:01 - Dernière réponse : avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention
- 11 avril 2006 à 10:36
Bonjour a tous,
Je suis actuellement en devellopement en c# d'une application qui permet d'integrer des données d'un fichier texte dans une base Microsoft access (97).
J'utilise donc une connection OleDB, ainsi qu'un dataSet et un OledbAdapter, mais j'ai un soucis:la compilation , pas de problème, et quand j'excecute, il me sort uen exception non gérée 'System.NullReferenceException' "La référence d'objet n'est pas définie à une instance d'un objet.".
Cela fait donc plusieurs jours que je cherche sur les forums de tout site le même cas que moi, mais il y en a pas .

Deplus, le code dévellopé à l'origine n'est pas de moi, je suis dans la boite que depuis 6 mois, et comme cette base implémtente mal les fichier, j'ai du reprendre le flambeau du devellopement derriere.
Voici mon dode source ou se situe le pb :

String dnsStr = ConfigurationSettings.AppSettings["BD"];

connectionBD = new OleDbConnection(dnsStr);

//nom du fichier journal
string nomFichierJournal="";
//repertoire du fichier d'export
string repExport="";


//initialisation de la connection à la base données Paramètres
String dnsStrParam = ConfigurationSettings.AppSettings["BDParam"];
OleDbConnection connectionBDParam = new OleDbConnection(dnsStrParam);

//récupération des chemins

OleDbDataAdapter dataAdapterChemins = new OleDbDataAdapter();

DataSet dsChemins;
dsChemins = new DataSet();

OleDbCommand cmd = new OleDbCommand("Select code,chemin from Chemin", connectionBDParam);


dataAdapterChemins.InsertCommand = cmd;


OleDbCommandBuilder dataAdapterCheminsBuilder = new OleDbCommandBuilder(dataAdapterChemins);



dataAdapterChemins.Fill(dsChemins,"Chemin");


PLease SOSOSOSOSOSOS!Thank you!

West Indian programmor
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention - 11 avril 2006 à 10:36
3
Merci
Ca y est j'ai identifié, le probleme.....ces prestataires de services.......
lj'vais mal initialisé une commande Oledb, au lieu de mettre
dataAdapterChemins.InsertCommand = cmd;
il fallai mettre
dataAdapterChemins.SelectCommand = cmd;
u oup ca me generai uen exception et le soucis, c est que l'expetion etai ecrit dans un journal ou l'initialisation de ce fichier journal se fesai bien plus tard...du coup System.NullReferenceException.
Merci de ton aide bernie666, j'ai deja pas mal avancé la, meme si le programme ne marche pas frcement comme il faut pour l'instant.
West Indian programmor

Merci avildark 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de avildark
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 10 avril 2006 à 15:08
0
Merci
trop peu d'information pour savoir ou est ton erreur, je te conseil de faire un debugage pas a pas afin de savoir sur quelle instruction tu as ce message d'erreur et je pense que tu corrigeras vite ton probleme. Car donné comme ca, sa peut venir des parametres qui sont vide,de ta chaine...

++
Commenter la réponse de bernie666
avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention - 10 avril 2006 à 15:23
0
Merci
le souci Bernie6666, c est que j 'ai déja tenté le debugage au pas a pas, jcrois pas avoir compris ccomment ca marche, vu qu'il sexecute comme si j avai fait "excecuter sans debugage"...
le "pas a pas detaillé" n est pas aussi simple d utilisation que celui sur vb:si tu connais, pourrai tu écrailerer ma lanterne.?

West Indian programmor
Commenter la réponse de avildark
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 10 avril 2006 à 21:26
0
Merci
salut ben tu poses un point d'arret sur cette ligne
String dnsStr = ConfigurationSettings.AppSettings["BD"];

et apres tu utilises la touche F11 et en passant la souris sur tes variables tu auras une info bulles afin de savoir si elles sont null ou non ;)

bonne soirée
Commenter la réponse de bernie666
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 10 avril 2006 à 21:26
0
Merci
j'ai oublier de préciser ... je parles pour vs 2003 / 2005 :)
Commenter la réponse de bernie666
avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention - 11 avril 2006 à 09:44
0
Merci
Ben justement c est la le soucis, j'ai encore reessayé, quand je met un poitnd 'arret et que je fait F11 sur la ligne que tu m'a dit, il met le point d'aret en point d'interrogation et continue sans s'arreter sur le point d'arret!!!Je comprend pas pourquoi...
Je suis sous visual studio.net 2003 pour information.
Si ca se trouv je trouvearai comme tu dis coment resoudre le problème avec le mode pas à pas, (que je connais bien vu que je l'utilise tres souvent dans les autres langages) mais je comprned pas pourquoi ici, il ne marche pas...
Il y a t'il des paramètres a configurer..?

West Indian programmor
Commenter la réponse de avildark
avildark 10 Messages postés lundi 10 avril 2006Date d'inscription 16 mai 2006 Dernière intervention - 11 avril 2006 à 10:14
0
Merci
Ca y est j ai trouvé pourquoi il voulais pas lancer le debugage:
Dans la fenetre "Configurationd es solutions" il etai en mode Release, et non en mode debug...j'aurai pu continuer a chercher longtemps comme ca!!!
Bon maintenant on va comprendre le problème.

West Indian programmor
Commenter la réponse de avildark
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 11 avril 2006 à 10:22
0
Merci
héhé ;) ok sa marche bon courage et retiens nous au courant

Bonne journée
Commenter la réponse de bernie666

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.