关于多语言化自定义资源文件报“System.Resources.MissingManifestResourceException”

Frog1228 2016-12-27 05:16:25
多语言化时,对于一些自定义消息内容,使用了自定义资源文件,如下图:
访问代码:

public static string GetResource(string id, Type typeObj, CultureInfo ci)
{
ResourceManager rms = new ResourceManager(typeObj);
return rms.GetString(id, ci);
}
Resources.GetResource("buttonCofrim", DefineRes.Instance.GetType(), MyGlobal.appCultureInfo); //读取资源文件

有一个自定义对话框MessageBox,这个自定义对话框也是继承自Form,对其进行重构,它里面的文字访问资源文件时就会报出
“System.Resources.MissingManifestResourceException”
“未能找到任何适合于指定的区域性或非特定区域性的资源。请确保在编译时已将“CtrlTest.DefineRes.resources”正确嵌入或链接到程序集“CtrlTest”,或者确保所有需要的附属程序集都可加载并已进行了完全签名。”
应该是没找到资源文件,但是其它窗体中像以上方式访问,就没有这个问题,而且这个资源我查过确实也是存在的。
这个报出的异常,在另一个工程中某次在一台机子上也报过,后来又奇怪地没有了。
所以我觉得这个异常应该是个隐患,但为什么会这样,我不清楚。我想知道为什么。
...全文
217 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Frog1228 2016-12-28
  • 打赏
  • 举报
回复
资源ID拼错了“buttonCofrim”。结贴。

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧