2010-09-22 8 views
0

J'utilise DataContractSerializer pour convertir et renvoyer un objet renvoyé à partir d'un appel WCF vers xml. Le client souhaite voir cette chaîne XML dans une page Web. Si je publie la chaîne directement sur une étiquette, le navigateur supprime évidemment les chevrons. Ma question est comment puis-je faire quelque chose de similaire à StackOverflow? Font-ils un & remplacer pour remplacer les crochets avec leurs entités html? Je vois qu'ils font une balise de code à l'intérieur d'un tag pré et ensuite faire des travées avec la classe appropriée. Y at-il un utilitaire existant là-bas que je peux utiliser pour faire cela au lieu d'écrire une sorte de routine d'analyse. Je suis sûr que quelque chose doit être libre. Si quelqu'un peut diriger vers le bon endroit ou un code qui peut facilement accomplir cela, je l'apprécierais grandement. Je m'excuse si c'est plus une question de méta.stackoverflow. Merci pour tous les conseils.Comment puis-je prendre une chaîne xml et l'afficher sur ma page de la même manière que StackOverflow le fait avec 'insert code'?

Répondre

0

La réponse de base est que pour obtenir HTML affiché comme tapées, caractères spéciaux et tout, vous devez remplacer les caractères spéciaux (<, > etc.), avec leurs équivalents échappées (&gt;, &lt; etc.). Au-delà, si vous voulez colorier la syntaxe, vous devrez analyser l'entrée pour identifier les mots-clés, etc.

Une liste complète des caractères spéciaux et de leurs codes d'échappement peut être trouvée here, mais ce n'est qu'un site parmi d'autres.