2017-06-30 4 views
0

In der Vergangenheit hat BizTalk (und das .NET-Framework im Allgemeinen) keine XSLT-Version neben 1.0 unterstützt. Unsere Firma ist im Begriff, auf BizTalk Server 2016 zu aktualisieren, und ich frage mich, ob es möglich ist (und nativ unterstützt), XSLT 2.0 oder 3.0 für die benutzerdefinierte Zuordnung in der genannten BizTalk Server-Version zu verwenden?Gibt es XSLT 2.0 oder 3.0 Unterstützung in BizTalk Server 2016 Zuordnung?

Ich weiß, es ist nicht wahrscheinlich, dass sie das implementiert haben, aber ich habe das Internet durchstreift und ich kann nicht scheinen, eine konkrete Antwort auf diese Frage zu finden.

+1

Die generische Antwort für XSLT> 1.0 für. Net ist Saxon: http://www.saxonica.com/html/documentation/about/gettingstarted/gettingstarteddotnet.html. Sie sind sich nicht sicher, ob Sie den nativen Support von BT 2016 nutzen, aber wenn Sie innerhalb von BT über C# verfügen, ist dies eine mögliche Problemumgehung. Natürlich unterstützt .Net's 'XslCompiledTransform' nur XSLT 1.0 (mit einigen MS-Addons außerhalb der XSLT-Spezifikation). – JohnLBevan

+0

Kommentarabschnitt impliziert nicht (Suchseite für XSLT; erstes Vorkommen): http://www.integrationusergroup.com/integration-not-monday-discussion-with-josh-twist/; aber kaum eine offizielle Seite für diese Art von Informationen. – JohnLBevan

+1

@JohnLBevan Wenn sich herausstellt, dass es keine andere Möglichkeit gibt, werde ich die Problemumgehungen genauer untersuchen. Danke für den Vorschlag. –

Antwort

2

Nein, es unterstützt nur XSLT 1.0.

jedoch auf Uservoice angefordert wurde, siehe Support for XSLT2 or XSLT3

Und Microsoft reagierte

Tord Glad Nordahl (Program Manager, Microsoft Corp) reagiert · 18. März 2017 Wir werden diese Anfrage an die weitergeleitet haben .NET Team. Wir werden das offen halten.

Wenn es irgendwelche anderen Funktionen oder Probleme mit BizTalk sind, stellen Sie sicher, dass auf sie zu erhöhen oder Abstimmung über UserVoice

+3

Nice find; FYI: Das hat mich dazu gebracht, mir die .net-Vorschläge anzusehen, wo Sie diese Option mit Daumen hochklicken können: https://github.com/dotnet/corefx/issues/2295 – JohnLBevan

+1

Falls es nicht ganz klar ist, ist dies eine .Net-Beschränkung BizTalk :(. –

4

MS Unterstützung für XSLT> 1.0

Leider MS nahm die Entscheidung, nicht zu Unterstützung für XSLT> 1.0. Hier ist ihre Begründung von 2004; und soweit ich sehen kann, wurde es seitdem nicht überarbeitet. https://blogs.msdn.microsoft.com/dareobasanjo/2004/05/13/why-you-wont-see-xslt-2-0-or-xpath-2-0-in-the-next-version-of-the-net-framework/

Es gibt mehrere Gründe, warum wir nicht XSLT implementieren, werden 2.0 und XPath 2.0.

Es viel Mühe nimmt ...

Ihre XslCompiledTransform einige zusätzliche Funktionen über XSLT 1.0 nicht unterstützt; aber es ist nicht Standard und auf keinen Fall volle Unterstützung. https://msdn.microsoft.com/en-us/library/system.xml.xsl.xslcompiledtransform(v=vs.110).aspx

XslCompiledTransform Die Klasse ist eine XSLT-Prozessor, der die XSLT 1.0 Syntax unterstützt. Es handelt sich um eine neue Implementierung mit Leistungsverbesserungen im Vergleich zur veralteten XslTransform-Klasse. Die Struktur der XslCompiledTransform-Klasse ist der XslTransform-Klasse sehr ähnlich. Die Load-Methode lädt und kompiliert das Stylesheet, während die Transform-Methode die XSLT-Transformation ausführt.

Problemumgehung: Verwenden Sie eine Drittanbieterlösung: z. Saxon

Das heißt, in BT können Sie C# -Klassen innerhalb von Orchestrierungen verwenden. Saxon bietet Unterstützung für XSLT 3.0 für .net, also müssen Sie nur ihre Drittanbieter-Bibliothek verwenden. Hier ist eine Kurzanleitung:

http://www.saxonica.com/html/documentation/about/gettingstarted/gettingstarteddotnet.html

Feature Request

Es ist eine offene Frage auf der Website .Net Core Framework diese Unterstützung anzufordern.Sobald es im Rahmen ist, würde BT es sicherlich nutzen. Bitte thumbs up diesen Vorschlag zu helfen, es zu priorisieren: https://github.com/dotnet/corefx/issues/2295

+1

Nochmals vielen Dank, dass Sie mir geholfen haben. Und er hat Recht, alle stimmen über den Vorschlag ab, wenn Sie das irgendwann sehen möchten! –

+1

Netter Fund, ich hatte keine Ahnung, das war der Standpunkt von MSFT in der Vergangenheit, danke fürs Teilen! –