Deleting folders after publishing in the new ASP.NET CORE 1.1 csproj format

I am publishing an ASP.NET Core 1.1 application, and I need to remove several folders (fr; nl; pt) created by the library (Fluent Validation) from the output:

<ItemGroup> <FluentValidationExcludedCultures Include="fr;nl;pt"> <InProject>false</InProject> </FluentValidationExcludedCultures> </ItemGroup> <Target Name="RemoveTranslationsAfterBuild" AfterTargets="AfterBuild"> <RemoveDir Directories="@(FluentValidationExcludedCultures->'$(OutputPath)%(Filename)')" /> </Target> 

But this does not work, and the folders are still copied ... Then I tried:

 <ItemGroup> <Content Include="fr" CopyToPublishDirectory="Never" /> <Content Include="nl" CopyToPublishDirectory="Never" /> <Content Include="pt" CopyToPublishDirectory="Never" /> </ItemGroup> 

But that didn't work either ...

Does anyone know how to do this?

+6
source share
2 answers

Try editing the csproj file and add the following section for each of the directories that you do not want to include when publishing:

 <ItemGroup> <PublishFile Remove="directory\**" /> </ItemGroup> 
+2
source

Another solution that works for assembly / publishing

 <!-- Removes FluentValidation localization folders --> <Target Name="AfterPackage" AfterTargets="CopyAllFilesToSingleFolderForPackage" /> <ItemGroup> <FluentValidationExcludedCultures Include="cs;da;de;es;fa;fi;fr;it;ko;mk;nl;pl;pt;ru;sv;tr;zh-CN"> <InProject>false</InProject> </FluentValidationExcludedCultures> </ItemGroup> <Target Name="FluentValidationRemoveTranslationsAfterBuild" AfterTargets="AfterBuild"> <RemoveDir Directories="@(FluentValidationExcludedCultures->'$(OutDir)%(Filename)')" /> </Target> <Target Name="FluentValidationRemoveTranslationsAfterPackage" AfterTargets="AfterPublish"> <RemoveDir Directories="@(FluentValidationExcludedCultures->'$(OutDir)%(Filename)')" /> </Target> 
0
source

Source: https://habr.com/ru/post/1015417/


All Articles