2009-06-18 3 views
0

J'analyse un fichier XML pour charger des données, et quand j'ai un attribut qui a une valeur non reconnue, je lance une exception InvalidDataException. Est-ce le bon ou est-il un meilleur/plus descriptifEst-ce la bonne exception?

Répondre

2

Cette exception suggère qu'il s'agit d'une erreur dans le format du fichier lui-même, comme une erreur dans l'encodage des caractères. Une XmlException serait un meilleur ajustement. Envisagez plutôt de lancer une exception ApplicationException, car ce n'est pas vraiment une erreur au format XML, mais plutôt quelque chose que le XML contient et que votre application n'accepte pas.

+0

Vous avez probablement raison. Merci! – RCIX

3

Cela semble raisonnable pour moi. Ce n'est pas une exception avec laquelle je suis particulièrement familier (c'est-à-dire que je ne l'ai pas rencontré dans d'autres API), mais cela fait passer le message.

Je suppose que la seule question est de savoir si un IOException d'une certaine forme serait plus approprié. Ce n'est pas le transfert réel qui est le problème ici, bien sûr - c'est le contenu qui est transféré. C'est une zone grise, certainement.

0

Si vous avez un schéma publié, une exception SchemaValidationException sera peut-être appropriée.

+0

Non pas encore de schéma. – RCIX

Questions connexes