You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET MVC中es-XL(拉美西班牙语)资源文件VS2019无法生成DLL问题

解决方案建议

1. 替换非标准文化代码es-XL为标准代码

es-XL并非.NET官方认可的标准文化标识符,VS2019对文化代码的校验逻辑比VS2012更严格。若需覆盖拉美西班牙语区域,可改用es-419(拉丁美洲西班牙语的中性标准文化代码):

  • 将资源文件名从Resources.es-XL.resx修改为Resources.es-419.resx
  • 同步调整项目中设置的文化标识为es-419

2. 手动注册自定义文化(需保留es-XL时)

如果业务场景必须使用es-XL这个非标准代码,可在应用启动时注册自定义文化:

  • 在Global.asax.cs的Application_Start方法中加入以下代码:
var cultureInfo = new CultureInfo("es-XL");
// 基于标准拉美西班牙语文化继承格式设置
cultureInfo.NumberFormat = new CultureInfo("es-MX").NumberFormat;
cultureInfo.DateTimeFormat = new CultureInfo("es-MX").DateTimeFormat;
cultureInfo.TextInfo = new CultureInfo("es-MX").TextInfo;
CultureInfo.RegisterCulture(cultureInfo);
  • 同时确保该资源文件的生成操作设为Embedded Resource,自定义工具设为ResXFileCodeGenerator

3. 检查并修正项目文件(.csproj)配置

打开项目的.csproj文件,确认es-XL资源项的配置正确:

  • 查找并确保存在类似如下节点,Culture属性需明确为es-XL,且DependentUpon指向主资源文件:
<EmbeddedResource Include="Resources.es-XL.resx">
  <DependentUpon>Resources.resx</DependentUpon>
  <Culture>es-XL</Culture>
</EmbeddedResource>
  • 若缺少该配置,手动添加后保存并重新加载项目

4. 清理缓存后重建项目

VS2019的编译缓存可能引发异常,执行以下步骤:

  • 点击菜单 生成 > 清理解决方案
  • 删除项目目录下的bin和obj文件夹
  • 点击菜单 生成 > 重新生成解决方案

5. 验证资源文件属性设置

选中es-XL对应的资源文件,在属性窗口确认:

  • 生成操作:Embedded Resource
  • 自定义工具:ResXFileCodeGenerator
  • 自定义工具命名空间:与主资源文件保持一致

内容的提问来源于stack exchange,提问作者Sunil Patekar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 01:45:06