Как произвести метку времени в MSBuild [дубликат]

Этот вопрос уже имеет ответ здесь:

Я использую MSBuild/yuicompressor, чтобы объединить и уменьшить JavaScript.

Как часть этого процесса, я хочу изменить свои ссылки сценария, таким образом, у них есть метка времени в querystring. Тем путем пользователь всегда получает некэшированную версию файла, когда новый выпуск публикуется. Например:

  
    

    

1 ответ

Этот метод сработал для меня:

<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>

<Target Name="MyTarget">
    <!-- Build timestamp. -->
    <Time>
      <Output TaskParameter="Month" PropertyName="Month" />
      <Output TaskParameter="Day" PropertyName="Day"  />
      <Output TaskParameter="Year" PropertyName="Year" />
    </Time>

    <!-- ....... -->    

    <!-- Add timestamp to includeFile -->
    <FileUpdate
      Files="@(includeFile)"
      Regex="#scriptfiletoken#"
      ReplacementText="&lt;script type='text/javascript' src='/scripts/combined-minified.js?$(Year)$(Month)$(Day)' /&gt;"
      />
</Target>
2
ответ дан 2 September 2019 в 22:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: