私の解決策は、このターゲットを .csproj の最後に追加することでした プロジェクトを閉じる前のファイル タグ。
<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="RemoveTranslationsAfterBuild" AfterTargets="AfterBuild">
<RemoveDir Directories="@(FluentValidationExcludedCultures->'$(OutputPath)%(Filename)')" />
</Target>
<Target Name="RemoveTranslationsAfterPackage" AfterTargets="AfterPackage">
<RemoveDir Directories="@(FluentValidationExcludedCultures->'$(_PackageTempDir)\$(OutputPath)%(Filename)')" />
</Target>
それはきれいではありませんが、仕事を成し遂げます。文化固有のリソースが必要な場合は、対応する行をリストから削除してください。将来の更新で不要な新しい文化が追加された場合は、それをリストに追加してください。
最良のオプションは、開発者にリソースを複数のナゲットに分けるよう依頼することです。この方法では、必要なものだけを追加できます。誰かがより良い解決策を思いつくまで、私は今のところこの解決策を使い続けます.
これで、公式プロジェクト wiki で私のソリューションを見つけることができます:https://github.com/JeremySkinner/FluentValidation/wiki/f.-Localization (ページの下部)