2010-10-20 5 views
2

J'utilise Visual Studio pour déboguer une transformation. Si je visualise la transformation et que je sélectionne XML>Démarrer le débogage XSLT, VS ouvre automatiquement le fichier de sortie et pendant que je parcours la transformation, je peux observer la sortie en cours d'écriture.Affichage de la sortie du débogueur XSLT de Visual Studio

Dans mon cas, cependant, parce que la transformation est effectuée par une application qui définit d'abord certains paramètres, je suis entrée à la place le débogueur XSLT en utilisant le code suivant:

XslCompiledTransform xslTransform = new XslCompiledTransform(true); // enableDebug 
XmlUrlResolver urlResolver = new XmlUrlResolver(); 
XsltSettings xsltSettings = new XsltSettings(true, true); 
XsltArgumentList transformArgumentList = new XsltArgumentList(); 
// some arguments are set here 
xslTransform.Load(transformFilePath, xsltSettings, urlResolver);    
using (XmlWriter writer = XmlWriter.Create(outputFilePath)) 
{ 
    xslTransform.Transform(inputFile, transformArgumentList, writer, urlResolver); 
} 

Un point d'arrêt est situé sur l'appel à Transformer. Après avoir démarré le débogueur, il se décompose sur Transform comme prévu. Quand j'utilise F11/Déboguer>Étape, j'entre le fichier XSLT et je peux le parcourir, mais je ne peux pas voir sa sortie.

Existe-t-il une option que je dois définir pour afficher la sortie telle qu'elle est écrite, comme dans le mode précédent?

Répondre

0

Malheureusement pas que je suis au courant. Je dois admettre que je n'ai pas souvent besoin de cela, mais vous pouvez remplacer writer par un flux de sauvegarde MemoryStream (conditionnellement lors du débogage) qui permettrait au moins de voir la sortie xml en examinant le flux dans le débogueur .

2

Je ne suis pas sûr que vous pouvez examiner le flux dans le débogueur. Une fois le débogage XSLT commencé, vous n'êtes plus dans le monde .NET. Ma fenêtre Locals n'affiche que les éléments XSLT. J'ai fait un feature request si vous voulez voter.

Questions connexes