Задача FileTransform в Azure DevOps выдает ошибку при преобразованииC#

Место общения программистов C#
Ответить
Anonymous
 Задача FileTransform в Azure DevOps выдает ошибку при преобразовании

Сообщение Anonymous »

Я использую задачу FileTransform@2 для преобразования файла web.config в файл web.[environment].config в конвейере Azure DevOps (yaml). Кажется, произошел сбой на одном из отдельных преобразований, что привело к сбою всей работы, хотя я не знаю, почему.
Вот сообщение об ошибке из задачи:
Executing SetAttributes (transform line 72, 48)
on /configuration/appSettings/add[@key='PCWSUser']
System.NullReferenceException: Object reference not set to an instance of an object.
Applying to 'add' element (no source line info)
at Microsoft.Web.XmlTransform.XmlTransformationLogger.ConvertUriToFileName(XmlDocument xmlDocument)
Set 'key' attribute
at Microsoft.Web.XmlTransform.XmlTransformationLogger.LogWarning(XmlNode referenceNode, String message, Object[] messageArgs)
Set 'value' attribute
at Microsoft.Web.XmlTransform.Transform.ApplyOnAllTargetNodes()
Set 2 attributes
Done executing SetAttributes


Похоже, ему не нравятся настройки приложения PCWSUser.
Вот фрагмент web.config для PCWSUser:
...

...

Вот фрагмент web.[environment].config (в данном случае web.qa.config) для PCWSUser:
...

...

Я не совсем уверен, что делаю неправильно... Когда преобразование выполняется локально в Visual Studio, с ним не возникает никаких проблем. Еще одна странная вещь: я запускал это несколько раз, и кажется, что каждый раз выбирается другая настройка приложения, в которой возникает ошибка. То же сообщение об ошибке и все такое, просто другие настройки. К вашему сведению, все настройки настроены таким образом.
Дайте мне знать, если вам понадобится дополнительная информация.
ИЗМЕНИТЬ 1 >
По предложению @Kevin Lu-MSFT я добавил /p:TransformWebConfigEnabled=false на шаг сборки и попробовал еще раз.
Журналы этапов сборки:
##[debug]INPUT_MSBUILDARGS: '/t:rebuild /p:DeployOnBuild=true /p:PublishProfile="Dev" /p:PackageLocation="D:\agent\_work\283\a" /p:TransformWebConfigEnabled=false'

Однако преобразование по-прежнему не удалось, хотя ошибка снова возникла. На этот раз ошибка произошла между двумя шагами, поэтому я даже не понимаю, что пошло не так.
Развертывание журналов этапов:
Executing Replace (transform line 10, 105)
on /configuration/connectionStrings/add[@name='SqlConnectionString']
Applying to 'add' element (no source line info)
Replaced 'add' element
Done executing Replace
System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.Web.XmlTransform.XmlTransformationLogger.ConvertUriToFileName(XmlDocument xmlDocument)
at Microsoft.Web.XmlTransform.XmlTransformationLogger.LogWarning(XmlNode referenceNode, String message, Object[] messageArgs)
at Microsoft.Web.XmlTransform.Transform.ApplyOnAllTargetNodes()
Executing Replace (transform line 11, 105)
on /configuration/connectionStrings/add[@name='DB2ConnectionString']
Applying to 'add' element (no source line info)
Replaced 'add' element
Done executing Replace


Подробнее здесь: https://stackoverflow.com/questions/628 ... -transform
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»