В Azure Release Pipeline при использовании $ (System.DefaultWorkingDirectory) в качестве значения переменной выдается исключение System.FormatException - PullRequest
1 голос
/ 28 апреля 2020

При выполнении Integration Test в моем проекте с использованием Azure Release Pipeline я использую $ (System.DefaultWorkingDirectory) для замены одной из моих переменных в appsetting.release. json через конвейер выпуска во вкладке переменных.

, но выдает ошибку ниже при запуске:

System.FormatException: Не удалось проанализировать файл JSON. ---> System.Text. Json .JsonReaderException: 'a' - недопустимый экранируемый символ в строке JSON. Строка должна быть правильно экранирована. Номер строки: 13 | BytePositionInLine: 27.

Может кто-нибудь помочь мне в решении этой ошибки. Заранее спасибо.

1 Ответ

1 голос
/ 28 апреля 2020

Вы используете Windows в стиле filepath, то есть C:\foo\bar. \ представляет escape-символ в JSON. Поэтому, если путь к файлу равен C:\a\src\, он интерпретирует \a как escape-символ и сбой.

Вам необходимо экранировать \, сделав его \\.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...