Asp.net core dotnet publish-o./dist未在msbuild中设置$OutDir或$OutPath

Asp.net core dotnet publish-o./dist未在msbuild中设置$OutDir或$OutPath,asp.net-core,msbuild,.net-core,Asp.net Core,Msbuild,.net Core,我有一个文件移动事件,我想在发布后触发它 <Target Name="CopyEmailTemplates" AfterTargets="AfterPublish"> <ItemGroup> <TemplatesFolder Include="Views\EmailTemplates\*.cshtml" /> </ItemGroup> <Copy SourceFiles="@(TemplatesFolder

我有一个文件移动事件,我想在发布后触发它

<Target Name="CopyEmailTemplates" AfterTargets="AfterPublish">
    <ItemGroup>
      <TemplatesFolder Include="Views\EmailTemplates\*.cshtml" />
    </ItemGroup>
    <Copy SourceFiles="@(TemplatesFolder)" DestinationFolder="$(OutDir)Views\EmailTemplates\" />
</Target>

我已确认该命令不会返回具有此目标的发布目录:

<Target Name="OutputTest" AfterTargets="AfterPublish">
    <Exec Command="echo OutPath: $(OutputPath)" />
    <Exec Command="echo OutDir: $(OutDir)" />
</Target>

期望值: OutDir设置为dist/

实际行为: OutDir设置为bin/Release/netcoreapp2.0/


我正在osx.10.12-x64上使用:.NET命令行工具(2.1.4)

发布是一个两步过程。该项目使用常规生成设置生成,然后发布到
$(PublishDir)
。在需要知道发布输出路径的任何位置使用此属性。

发布过程分为两步。该项目使用常规生成设置生成,然后发布到
$(PublishDir)
。在需要知道发布输出路径的任何位置使用此属性。

自动应答,希望避免将来让人头疼

dotnetpublish-o./dist
命令将在msbuild中设置
$(PublishDir)
变量

dotnet build-o./dist
不设置
$(OutDir)

为了更明确地进行构建,我现在使用msbuild命令

dotnet发布-o./dist-c发布

变成:


dotnet msbuild/t:publish/p:PublishDir=dist//p:Configuration=Release

自动应答,希望避免人们未来的头疼问题

dotnetpublish-o./dist
命令将在msbuild中设置
$(PublishDir)
变量

dotnet build-o./dist
不设置
$(OutDir)

为了更明确地进行构建,我现在使用msbuild命令

dotnet发布-o./dist-c发布

变成:

dotnet msbuild/t:publish/p:PublishDir=dist//p:Configuration=Release