XmlFile
позволяет условно добавлять элементы и / или атрибуты, указав атрибут ElementPath
.
В следующем примере устанавливается XML-файл File.xml , а затем добавляется элемент appender-ref
с атрибутом ref
, установленным в RollingFileAppender , если appender-ref
не существует элемент. Обратите внимание, что элемент XmlConfig
для добавления значения атрибута ссылается на идентификатор другого элемента через его атрибут ElementId
.
<Component>
<File Source='$(sys.SOURCEFILEDIR)File.xml'/>
<util:XmlConfig Id="CreateAppenderElement"
File="[#File.xml]"
Action="create"
ElementPath="/root"
VerifyPath="/root/appender-ref"
Name="appender-ref"
Node="element"
On="install">
<util:XmlConfig Id="CreateAppenderElement_SetRef"
ElementId="CreateAppenderElement"
File="[#File.xml]"
Name="ref"
Value="RollingFileAppender"/>
</util:XmlConfig>
</Component>