C#中使用ResXResourceWriter遇CS0246错误求助
问题排查与解决方案
出现CS0246错误的核心原因是:ResXResourceWriter类并不在默认引用的程序集中,仅添加using System.Resources;无法解决,这也是该using指令变灰(未被实际使用)的原因。
根据你使用的.NET框架版本,分两种情况解决:
情况1:.NET Core/.NET 5+(含.NET 6/7/8)控制台项目
ResXResourceWriter被移到了独立的NuGet包中,需要手动安装:
- 通过NuGet包管理器搜索并安装
System.Resources.Extensions包; - 或在项目目录下执行命令:
dotnet add package System.Resources.Extensions
安装完成后,using System.Resources;会自动生效,编译器能识别ResXResourceWriter类。
情况2:.NET Framework控制台项目
ResXResourceWriter属于System.Windows.Forms程序集,需要添加程序集引用:
- 右键项目 → 选择「添加」→「引用」;
- 在「程序集」→「框架」列表中找到
System.Windows.Forms并勾选; - 点击「确定」完成引用添加。
完成上述操作后,你的代码就能正常编译运行,生成目标resx文件。
内容的提问来源于stack exchange,提问作者Carl Monte
相关产品推荐
相关产品推荐

