我正在尝试自定义我的*.pubxml
项目的ASP.NET Core
个人资料。为了弄清楚它是如何工作的,我尝试将几个随机的*.log
文件从一个目录复制到另一个目录。我曾经以某种方式设法做到了,但是我不知道自己做了什么,现在却陷入困境。这不会复制任何文件。
我执行此配置文件
dotnet publish MyCoolProject.csproj /p:PublishProfile=\Properties\PublishProfiles\TestProfile.pubxml
当我使用-v diag > pubxml.log
运行它时,它会创建一个25 MB
大日志文件,并且可以在其中看到要复制的所有*.log
文件:
MyFiles
c:\temp\test1.log
c:\temp\test2.log
但不会复制它们。
这是我的个人资料:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<PublishProvider>FileSystem</PublishProvider>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<ProjectGuid>ec190b7a-d5b4-43d3-a729-75e272037c05</ProjectGuid>
<publishUrl>c:\temp\bin\</publishUrl>
<DeleteExistingFiles>False</DeleteExistingFiles>
<TargetFramework>net47</TargetFramework>
<RuntimeIdentifier>win81-x64</RuntimeIdentifier>
</PropertyGroup>
<ItemGroup>
<MyFiles Include="c:\temp\*.log" />
</ItemGroup>
<Target Name="CopyFiles">
<Copy SourceFiles="@(MyFiles)" DestinationFolder="c:\temp\test">
<Output
TaskParameter="CopiedFiles"
ItemName="test" />
</Copy>
</Target>
</Project>
我在这里想念什么?
答案 0 :(得分:1)
要在Target
中运行FolderProfile.pubxml
,请尝试指定诸如BeforeTargets
或AfterTargets
之类的条件。
<ItemGroup>
<MyFiles Include="c:\temp\*.log" />
</ItemGroup>
<Target Name="CopyFiles" BeforeTargets="BeforePublish">
<Copy SourceFiles="@(MyFiles)" DestinationFolder="c:\temp\test">
<Output
TaskParameter="CopiedFiles"
ItemName="test" />
</Copy>
</Target>