J'ai besoin d'un outil de processeur XSLT 2.0 pour une utilisation dans .NET 4.0. J'ai découvert que XSLT 2.0 n'est pas pris en charge par .NET. Les alternatives sont des moteurs tiers comme Saxon 9.x ou Xqshaarp. J'ai besoin d'un soutien de XSLT 2.0 pour un environnement de production commercial, où la performance est très importante. Questions: P>
3 Réponses :
Je suis un développeur XQSharp, mais je vais essayer de donner une réponse impartiale. P>
XQSharp et Saxon sont de bons produits. Chacun a une conformité élevée à la norme et les deux pour objectif de grandes performances. Mon meilleur conseil consiste à télécharger des éditions d'essai et testez avec le type de transformations que vous prévoyez courir. Nous serions intéressés d'entendre comment vous allez continuer. P>
Si vous courez dans un environnement .NET, je m'attendrais à ce que XQSharp ait quelques avantages. Premièrement, il est développé dans .NET, tandis que Saxon est développé en Java et utilise IKVM pour exécuter .NET. Vous voudrez peut-être comparer les éditions Java et .NET de Saxon pour déterminer si cela impose une surcharge de performance. P>
XQSharp est destiné à intégrer bien avec des classes à partir des espaces de noms.xml et system.xml.xpath. Par exemple, la mise en œuvre utilise des xpathnavigators. Vous pourriez trouver cette familiarité utile. P>
XQSHARP implémente et étend la fonctionnalité trouvée dans XslCompiledTransform pour appeler à .NET à partir de XSLT, que vous pouvez trouver utile. P>
Voir cette liste de implémentations . P>
Au cours des dernières semaines je XQSharp, Saxon 9.x et AltovaXML de réécrire mon programme en utilisant le moteur de Microsoft XSLT1. Voici mes expériences: p>
AltovaXML strong> p>
XQSharp strong> p>
Saxon 9.x strong> p>
Pour ma XML spécifique et la performance traduction XSLT (de XSLT1) Comparaison: p>
Il serait intéressant de voir une ventilation de la durée de la réduction de la transformation vs combien de temps pour exécuter la transformation de chaque mise en œuvre; Je soupçonne que la majorité du temps pour Xqsharp et Saxon était dans la compilation. Aussi quelle implémentation de Microsoft avez-vous utilisée, était-ce xslCompiledTransform?
Vous n'avez pas trouvé comment répondre à la réponse ci-dessus (qui m'a donné de bonnes notes), alors je vais le poster ici: Altovaxml a modifié leur politique concernant l'Altovaxml.dll. Vous pouvez obtenir une version gratuitement, mais il manque certaines fonctionnalités. Donc, vous feriez mieux d'acheter une licence. Il semble également que Altova ait des problèmes de mémoire que le programme semble rester travailler même après avoir fermé la connexion. p>
Saxon a une stratégie d'un tressant d'essai étrange. Par cela, je veux dire qu'il est un peu étrange que vous ayez un test de trente jour, mais la date de début / de fin est en train de déplacer 10 jours (en savoir plus sur le site Web pour Saxon). Il ajoute également du texte à vos fichiers convertis. Je n'aime pas cela comme je veux que mes fichiers convertis - même sous test - pour être correct afin de pouvoir constater qu'il est possible d'envoyer les fichiers vers l'avant dans nos systèmes. J'espère que cela changera dans les versions ultérieures. P>
xqshaparp - je n'ai pas essayé cela et je ne peux donc pas en dire grand chose à ce sujet. Lorsque je mettant la mise à niveau de mon service qui utilise XSLT2.0, je donnerai cette bibliothèque / assistant un spin. P>