生成RESX文件添加资源时触发System.MissingMethodException异常
解决RESX资源访问时的System.MissingMethodException错误
检查RESX资源的类型设置
打开你的RESX文件,找到Test对应的资源项,确认它的“类型”不是错误的System.Byte[]。如果是文本文件,类型应该设为System.String,或者让VS自动识别。手动指定错误类型会导致生成的代码用错构造函数,触发异常。重置RESX的自定义工具
右键RESX文件打开属性面板,把“自定义工具”改回默认的ResXFileCodeGenerator,然后点击“运行自定义工具”。别乱改其他生成器,先回到默认配置测试。清理重建项目
执行生成菜单里的“清理解决方案”,再重新生成整个项目。旧的生成代码缓存可能导致奇怪的反射错误,清理后重新生成能解决这类问题。检查资源文件的嵌入配置
右键你添加的测试文本文件,打开属性,确认“生成操作”是Embedded Resource,“复制到输出目录”设为“不复制”。RESX默认会嵌入资源,生成操作设置错了会打乱加载逻辑。查看自动生成的Resources代码
找到RESX文件下方的Resources.Designer.cs文件,看Test属性的实现。正常文本资源的代码应该是调用ResourceManager.GetString,如果代码里出现Activator.CreateInstance(typeof(byte[]), ...)这类逻辑,说明资源类型识别错误,回去改RESX里的类型设置就行。
内容的提问来源于stack exchange,提问作者Queelton
相关产品推荐
相关产品推荐

