Directory.Build.targets 1.2 KB

123456789101112131415161718192021222324
  1. <Project>
  2. <PropertyGroup>
  3. <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
  4. </PropertyGroup>
  5. <Target Name="UpdateAppSettings" AfterTargets="Build;Publish"
  6. Condition=" '$(UpdateAppSettings)' == 'true' and Exists('$(MSBuildProjectDirectory)\appsettings.json') ">
  7. <PropertyGroup>
  8. <AppSettingsInputFile>$(MSBuildProjectDirectory)\appsettings.json</AppSettingsInputFile>
  9. <AppSettingsOriginalString>"InstrumentationKey": ""</AppSettingsOriginalString>
  10. <AppSettingsReplaceString>"InstrumentationKey": "$(RoslynPadTelemetryKey)"</AppSettingsReplaceString>
  11. </PropertyGroup>
  12. <WriteLinesToFile
  13. File="$(OutDir)\appsettings.json"
  14. Lines="$([System.IO.File]::ReadAllText($(AppSettingsInputFile)).Replace($(AppSettingsOriginalString), $(AppSettingsReplaceString)))"
  15. Overwrite="true"
  16. Encoding="Unicode"/>
  17. <WriteLinesToFile
  18. Condition=" '$(PublishDir)' != '' "
  19. File="$(PublishDir)\appsettings.json"
  20. Lines="$([System.IO.File]::ReadAllText($(AppSettingsInputFile)).Replace($(AppSettingsOriginalString), $(AppSettingsReplaceString)))"
  21. Overwrite="true"
  22. Encoding="Unicode"/>
  23. </Target>
  24. </Project>