. NET Базовая условная публикация в зависимости от опубликованной целевой среды выполнения - PullRequest
0 голосов
/ 07 мая 2020

Есть ли способ проверить, какова опубликованная целевая среда выполнения? Существуют разные наборы файлов развертывания, которые я хочу скопировать в каталог publi sh в зависимости от того, является ли целевая среда выполнения Linux или Windows. Каким будет макрос / свойство для проверки опубликованной среды выполнения? Я пытаюсь сделать что-то вроде следующего:

<Target Name="CopyFiles" AfterTargets="Publish" Condition="$(TargetRuntime) == Linux-64">
    <MakeDir Directories="$(PublishDir)" Condition="!Exists('$(PublishDir)Deploy')" />
    <Copy SourceFiles ="$(SolutionDir)*" DestinationFolder ="$(PublishDir)Deploy" />
</Target>

1 Ответ

0 голосов
/ 08 мая 2020

Вероятно, вы ищете $(RuntimeIdentifier) - например:

<ItemGroup Condition="'$(RuntimeIdentifier)' == 'linux-x64'">
  <Content Update="foo.json" CopyToPublishDirectory="PreserveNewest" />
</ItemGroup>

(Предполагая, что это элемент содержимого, также может быть None в зависимости от типа проекта)

...