пятница, 8 апреля 2016 г.

Использование Saxon в Visual Studio

Нашел вполне себе приемлемый способ использования процессора Saxon для преобразования XSLT 2 прямо из интерфейса Visual Studio. Что касается подключения схемы и всего, что с ним связано уже писал здесь, так что повторяться не буду.

Что касается преобразования. Тут я делают так:
  1. Преобразование, исходный документ и результат преобразования должны лежать в одном каталоге
  2. Имя преобразования и имя исходного документа должны отличаться только расширением имени файла (xslt и xml соответственно).
  3. Выходной документ будет иметь то же имя + "_output" и расширение xml
  4. Все документы должны быть частью какого-нибудь проекта..
Далее в меню "Сервис" выбираем "Внешние инструменты...". В диалоговом окне выбираем кнопку добавить и редактируем инструмент. В поле "Название" вводим то, что будет отображаться в меню для этого инструмента, например "saxon transform xslt". В поле "Команда" - полный путь к программе "Transform.exe", например такой "C:\Program Files\Saxonica\SaxonHE9.6N\bin\Transform.exe" (сначала надо установить саму программу, естественно). А в поле аргументы вводим следующий текст
-t -s:"$(ItemDir)\$(ItemFileName).xml" -xsl:"$(ItemPath)" -o:"$(ItemDir)\$(ItemFileName)_output.xml"

Кроме того надо установить флажок "Использовать окно вывода", для того, чтобы при каждом запуске не появлялось окно консоли и чтобы сообщения консоли можно было читать в окне вывода самой студии.
Встроенные инструменты отладки студии в таком случае доступны не будут, но, в принципе, они и так довольно слабые, а вывод саксона достаточно информативен. Да и поддерживает всякие xsl:message, так что вполне можно с этим работать.

Теперь, когда документ XSLT активен (то есть открыт на активной вкладке студии), заходим в меню "Сервис", там появится пункт для нашего инструмента, по нему клацаем и все готово.

Комментариев нет :

Отправить комментарий