首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ResxResourceReader抛出ArgumentNullException

ResxResourceReader抛出ArgumentNullException
EN

Stack Overflow用户
提问于 2016-07-21 16:03:10
回答 2查看 89关注 0票数 0

我已经使用ResxResourceReader来读取资源文件。它可以很好地处理某些文件。在下面的代码行中解析时出现错误

代码语言:javascript
复制
<data name="GlbResource"  type="System.Resources.ResXFileRef,  
System.Windows.Forms">
<value>glbresource.resx;System.String, mscorlib, Version=4.0.0.0,  
Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>

你能告诉我为什么ResxResourceReader无法解析上面的行吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-21 17:24:14

我也有同样的问题。请使用下面的代码并试用它。这对我很有效..

代码语言:javascript
复制
XDocument xDoc = XDocument.Load("File Path");
IEnumerable<XElement> xmlData = xDoc.Descendants("node name");
foreach(XElement element in xmlData)
{
   if(element == null)
   {
       continue;
   }

   // retrieve key using element.Attribute("name").Value
   // retrieve value using element.Element("value").Value
 }
票数 0
EN

Stack Overflow用户

发布于 2016-07-21 16:49:12

Version=4.0.0.0

这就是问题所在。您未在.NET 4.0 (或更高版本)上运行。因此,您的程序无法从版本4程序集中加载类型。

假设您不能以.NET 4为目标,唯一的修复方法是重新生成.resx文件。在设计器中打开包含坏的.resx文件的窗体,并对其中一个属性进行简单的更改。然后把它改回来。这将重新创建.resx文件,它现在将使用版本2.0.0.0引用。通过使用文本编辑器查看.resx文件,仔细检查更改是否有效。

您可能想要在文件中使用编辑+查找和替换+查找来搜索所有.resx文件中的"4.0.0.0“,以确保您拥有它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38498403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档