2017-03-02 7 views
6

私はASP.NET Core 1.1アプリケーションを公開しており、ライブラリからいくつかのフォルダ(fr; nl; pt)を削除する必要があります流暢検証):新しいASP.NET CORE 1.1 csprojファイル形式で公開後にフォルダを削除する

<ItemGroup> 
    <FluentValidationExcludedCultures Include="fr;nl;pt"> 
    <InProject>false</InProject> 
    </FluentValidationExcludedCultures> 
</ItemGroup> 

<Target Name="RemoveTranslationsAfterBuild" AfterTargets="AfterBuild"> 
    <RemoveDir Directories="@(FluentValidationExcludedCultures->'$(OutputPath)%(Filename)')" /> 
</Target> 

は、しかし、これは動作しないとフォルダがまだコピーされます...そして、私が試した:

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

しかし、これは...どちらか

を動作しませんでした誰にどんな考えがありますか?この仕事をするには?

答えて

2

あなたのcsprojファイルを編集して公開するときに含めたくないディレクトリごとに次のセクションを追加してください:

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

wwwrootのためにこの1行を追加しようとしましたが、動作しませんでした。公開はwwwrootを完全にコピーします。 –

0

ビルド/

<!-- 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> 
を公開のために働く別の解決策
関連する問題