2010-12-12 58 views
0

J'analyse XML dans un ensemble de données, il fonctionne très bien, sauf avec certains Cahiers des charges donne une erreur:analyse syntaxique XML: référence d'objet non définie à une instance d'un objet

Object reference not set to an instance of an object.

J'ai essayé le XmlDataSource et il donne la même erreur Notez qu'il n'y a pas de différences entre les fichiers RSS et je ne sais pas sur quelle base il donne une telle erreur

+1

SHow nous le XML que vous essayez d'analyser, et le code d'analyse! Nous ne sommes pas des lecteurs d'esprit, vous savez ... nous devons voir ce que vous essayez de faire ... –

Répondre

0

Sans votre code, il est impossible de dire exactement où l'erreur est. Toutefois, lorsque vous utilisez un type de référence, vous devez vérifier qu'il ne s'agit pas d'une référence nulle.

Cela signifie essentiellement partout où vous utilisez une période (comme dans « someVariable.DoSomething() »), vous devez avoir vérifié que la variable est non nulle:

Ainsi, ce code est dangereux:

SomeType someVariable = xmlElement.Nodes[0]; 
someVariable.DoSomething(); 

parce que someVariable peut être nul.

Pour résoudre ce problème, vous devez vérifier s'il est sûr de l'utiliser, comme ceci:

SomeType someVariable = xmlElement.Nodes[0]; 
if (someVariable != null) 
    someVariable.DoSomething(); 

Regardez donc dans votre code, et regardez tous les endroits où vous utilisez une référence sans vérifier si c'est nul.