Преобразование файла web.config с InsertBefore работает, когда в теге есть дочерние элементы, но нет пустого тега. - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть файл конфигурации с этим кодом:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
    <system.web>
        <compilation debug="true" targetFramework="4.7.2">
            <assemblies>
                <add xdt:Transform="InsertBefore(/configuration/system.web/compilation/assemblies/*[1])" assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
            </assemblies>
        </compilation>
    </system.web>
</configuration>

В одном проекте у меня есть этот файл web.config:

<compilation debug="true" targetFramework="4.7.2">
      <assemblies>
        <add assembly="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"/>
      </assemblies>
    </compilation>

И после преобразования это выглядит так:

<system.web>
    <compilation debug="true" targetFramework="4.7.2">
      <assemblies>
        <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
        <add assembly="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"/>
      </assemblies>
    </compilation>
</system.web>

, что здорово, именно то, что мне нужно.

Однако у меня есть еще один проект с этим web.config:

<system.web>
    <compilation debug="true" targetFramework="4.7.2">
      <assemblies></assemblies>
    </compilation>
</system.web>

Как видите,тег сборки отсутствуетэто?

...