IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[XPath] ne pas prendre en compte le Doctype.


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut [XPath] ne pas prendre en compte le Doctype.
    Bonjour,

    J'utilise un logiciel propriétaire de tests pour le protocole SIP.
    Les campagnes de tests généré sous l'application utilisent un fichier xml crée lors de la génération.
    Je peux lancer ces campagnes (et le logiciel) en ligne de commande.
    Mais avant de faire cela je doit éditer le fichier xml et modifier certaines données.
    Et c'est là que cela se corse :

    Le fichier est généré avec un Doctype et une référence à un fichier dtd inexistant sur le disque dur. Je pense que ce fichier est généré par l'application avant lancement des campagne de test à partir d'un fichier d'extension dtd_1.5

    Le problème c'est que lorsque mon programme C# ouvre le fichier, l'application n'est pas lancé (et ne peux pas être lancé), et donc le fichier dtd n'existe pas. Mais l'intance de XPathDocument en cours de création voit la ligne doctype avec la référence vers le fichier dtd et n'est pas contente de ne pas le trouver !!!!

    Donc voilà c'est bien la merde cett appli pourri

    bref une solution que je peux mettre en place :
    1) Ouvrir le fichier en mode texte.
    2) Supprimer la deuxième ligne (le doctype).
    3) Faire mes modifications.
    4) Remettre la ligne (oui parce que sinon l'application pilotée n'est pas contente !!!! )

    Bref un peu lourd pour pas grand chose et je n'ai pas trouvé de méthode dans XPathDocument pour dire : Ne prends pas en compte le Doctype et la référence vers le fichier DTD.

    QUelqu'un aurait une autre solution que celle que j'ai exposé ?

    merci d'avance pour vos réponses et m'avoir lu.

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Ici, sur la méthode Select, il donne le XPath à utiliser donc il ne passe pas par le DocType:

    http://forums.microsoft.com/MSDN/Sho...34564&SiteID=1

  3. #3
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Merci de ta réponse.

    Mais j'aurais du directement mettre la ligne du XML qui me pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE campaignloader PUBLIC "-//TESTING TECH//DTD MLF//1.7" "mlf.dtd">
    <campaignloader>
    Et la ligne de code où cela plante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xPathDoc = new XPathDocument(path);


    Et oui lors de la construction de l'objet, il semblerais qu'il parse le fichier, et donc xpath cherche mlf.dtd qui n'existe pas

    Créer un mlf.dtd est une solution qui me conviens encore moins que de modifier le fichier en l'ouvrant comme un simple txt.

    Merci quand même d'avoir tenter de résoudre mon problème.

    J'ai pas trouvé le moyen de créer un XPathDocument en précisant -> Ne pas prendre en compte le DocType.

Discussions similaires

  1. Ne pas prendre en compte Majuscule et minuscule
    Par marsupilami34 dans le forum VBA Access
    Réponses: 6
    Dernier message: 16/04/2008, 15h54
  2. Réponses: 2
    Dernier message: 31/08/2007, 16h52
  3. ne pas prendre en compte la casse ni les accents
    Par pigpen dans le forum JDBC
    Réponses: 14
    Dernier message: 10/05/2007, 14h40
  4. [.NET] ne pas prendre en compte les "0"
    Par californialove dans le forum MFC
    Réponses: 16
    Dernier message: 05/06/2006, 10h05
  5. [XHTML] Ne pas prendre en compte les balises XHTML
    Par simnitch dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 18/08/2005, 15h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo