Curieux problème avec XElement.Load

Résolu
Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 - 24 oct. 2007 à 19:58
Miltiades Messages postés 233 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 25 octobre 2010 - 26 oct. 2007 à 14:59
Bonsoir à tous,

Je souhaite utiliser XLINQ pour rechercher des informations dans un fichier XML.
J'utilise donc le code suivant pour charger le fichier que je souhaite lire :

try
{
  urlFile =
XElement.Load(_xmlUrlFile);
}

// The file does not exist
catch (
FileNotFoundException)
{
}

Je gère dans mon code l'exception en affichant un message d'erreur à l'utilisateur et en quittant le programme.

Le problème est le suivant : lorsque 'urlFile' pointe vers un mauvais emplacement, l'exception est levée (normal), mais lorsque l'emplacement est correct, la fonction retourne immédiatemment ! +_+
Les intructions suivantes ne sont donc pas executées, et aucune exception n'est cependant levée
C'est à ne rien y comprendre

Aucune idée du pourquoi du comment, surtout que j'ai déjà utilisé cette méthode dans le passé, jamais eu de souci !
Quelqu'un a t-il une idée sur cette bizarrerie ?

Pour info, j'utilise XP Pro avec Orcas béta 2.
Le code provient d'un projet de type ClassLibrary.

Je remercie d'avance quiconque qui prendra le temps de me répondre et de m'aider

Bien Amicalement,

JacK_^

4 réponses

cs_rodcobalt22 Messages postés 193 Date d'inscription dimanche 10 février 2002 Statut Membre Dernière intervention 16 février 2016
25 oct. 2007 à 10:42
salut


Dans les paramètre du Debug, "debeuguer >> exception" paramètre les exception "common langage runtime" en lui demandant de levé même quand s'est géré.


Regarde à paramètre également, les autres types d'erreurs pour forcer le debug à te montrer l'erreur.


Si rien ne se lève s'est que ton chemin n'est peut être pas si bon que ça.

RodCobalt22, vous salue bien
Pensez au TAG résolu ! Ainsi les réponses seront plus facile à trouver et les serial Helper iront plus vite
 PS : Pardonnez mes fautes d'orthographe (All
3
Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 2
25 oct. 2007 à 10:43
Problème réglé, j'ai trouvé la solution
Déjà commencer par mettre XDocument.Load.
La fonction retournait sans prévenir car le fichier XML de destination n'est pas valide : tapé à la main sans la balise <?xml version"..." ...?>
0
Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 2
25 oct. 2007 à 10:48
rodcobalt22> En effet, j'ai remis le code erroné en forçant l'affichage des exceptions CLR. J'obtiens bien une exception de type XmlException avec comme message "Données non valides au niveau racine. Ligne 1, position 1)"

Merci encore !
0
Miltiades Messages postés 233 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 25 octobre 2010
26 oct. 2007 à 14:59
dans ce cas la je te conseil fortement de faire ceci:

try
{
  urlFile = XElement.Load(_xmlUrlFile);
}

// The file does not exist
catch (FileNotFoundException)
{
}
catch (Exception)
{
}

ainsi tu catchera toutes les exceptions ... et pas seulement les FileNotFoundException ...
et ajoute aussi un finally ca peut pas faire de mal ...

Nul ne devient grand par la guerre...
0
Rejoignez-nous