我的资源文件位于一个单独的 dll 中,并且都标记为:
- 构建操作 - 嵌入式资源
- 复制到输出目录 - 不要复制
- 自定义工具 - PublicResXFileCodeGenerator
添加了自定义文化文件:SiteLabels.en-customer.resx
添加了新的文化 en-customer 作为源自“en”的中性语言
string culture = "en-customer";
CultureAndRegionInfoBuilder cultureAndRegionInfoBuilder = new
CultureAndRegionInfoBuilder(culture, CultureAndRegionModifiers.Neutral);
CultureInfo cultureInfo = new CultureInfo(twoLetterISOLanguageName);
cultureAndRegionInfoBuilder.LoadDataFromCultureInfo(cultureInfo);
cultureAndRegionInfoBuilder.Parent = cultureInfo;
cultureAndRegionInfoBuilder.CultureEnglishName = culture;
if (CultureInfo.GetCultures(CultureTypes.UserCustomCulture).Any(cult => cult.Name == culture))
{
CultureAndRegionInfoBuilder.Unregister(culture);
}
cultureAndRegionInfoBuilder.Register();
构建项目并看到卫星程序集 en-customer\MyResources.resources.dll
不是由 VS 创建的
阅读 SO 中有关此问题的所有答案,并没有看到任何关于该问题的投诉,只有关于使用 CLI 创建附属程序集的建议。
这种情况下的问题是引用我的资源 dll 的项目不会将新创建的附属程序集复制到它的 bin 文件夹中。