发布.NET Core API服务时如何使用SatelliteResourceLanguages过滤资源文件

use*_*980 6 .net-core asp.net-core

发布 .NET Core API 服务时,输出包括本地化资源(cs、de、es、fr 等)

在寻找防止 .NET Core 发布这些本地化资源文件的解决方案时,我在 Github上遇到了这个提交以实现SatelliteResourceLanguages该目的。

但是我该如何实施呢?

Abe*_*bel 9

根据此答案,您应该将其添加到项目文件中:

<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
Run Code Online (Sandbox Code Playgroud)

以下是在项目配置中使用上述行的方法:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <SatelliteResourceLanguages>en;de;pt</SatelliteResourceLanguages>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="FooBar" Version="2.0.1" />
  </ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

请注意,SatelliteResourceLanguages截至今天,我在任何地方都找不到正式记录。

另请注意,您需要拥有最新版本的 SDK,因为此错误报告提到一个错字阻止了它在以前的版本中正常工作。