问题标签 [xml-deserialization]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 反序列化 XML
我正在尝试访问<accessmode>
特定的 xml 中的节点<action>
。
我尝试使用以下代码。
由于<accessmode>
是我尝试过的arrayitem下的一个元素。但是,我得到的值为空。任何帮助将不胜感激。
c# - 反序列化新帐户的 Facebook 响应中的 XML 异常
我正在使用Facebook-c-sharp将照片上传到 Facebook。此代码工作正常,但对于 Facebook 的新帐户,此代码似乎有问题。我认为这可能与 Facebook 的新隐私政策有关,而且上述代码的作者已停止开发新版本。问题似乎在于创建相册。使用 FB 的旧帐户,可以创建相册并正确上传照片。对于新帐户(最近创建,大约 20 天前),相册被创建,但是当 Facebook 返回 XML 响应时,当我尝试反序列化 XML 时抛出 XMLException。
旧帐户的 XML 响应如下
新帐户的 xml 响应如下
我得到的 XMLException 如下(再次:这只发生在新帐户上。旧帐户反序列化工作得很好)
如您所见,Facebook 对新旧帐户的 XML 响应是相似的。但是对于新帐户,反序列化仍然失败。为什么会这样?我可以在两个 xml 文件中找到的唯一区别是第二个 XML 文件中(albumid)中存在“下划线 _”。但据我所知,下划线是有效的 xml,解析应该不是问题吧?有人可以告诉我为什么会收到此错误。
编辑:
我让它工作了。如上所述,下划线导致了问题。我没有检查那是很愚蠢的。在 C# 代码中,援助声明为 long。由于带下划线的字符串不能反序列化到 long 我得到了异常。我将来自 Facebook 的 xml 响应复制到一个 xml 文件中,然后执行 xsd Facebook.xml 和 xsd Facebook.xsd 以获取 Facebook.cs。我将生成的cs文件与我拥有的文件进行了比较,发现在生成的cs中将aid声明为String,在我的文件中声明为long。
.net - .Net Xml 反序列化
我有以下 XElement
我正在尝试将它反序列化到这个对象中
该类型工作没问题,但我无法将两个 Record 节点放入对象的 Record 列表中。
是否可以不覆盖 ISerializable 并编写自定义代码?
c# - XMLSerializer 无法反序列化 xml 文档
我是 C# 的新手。我有一个返回 xml 响应的 java REST 服务,我正在尝试使用 C# XmlSerializer 反序列化 xml 文档。下面粘贴了一个示例 xml 文档响应。
当我将此 xml 文档反序列化为 Document 对象时,它工作正常。我的文档类粘贴在下面
在我的主程序中,当我尝试时,我得到了一个 xmlNodes 数组
在服务器端 java REST 服务实现中,字段实际上是一个数组列表,它将包含一个接口的三个实现的实例。(列表可能包含自定义业务对象的 ScalarFieldImpl 或 ArrayFieldImpl)。
我想使用 XmlSerializer 将此 xml 字段反序列化为 ScalarFieldImpl 或 ArrayFieldImpl。我想知道这是否可能?如果是这样,我该怎么做?
c# - 覆盖 Web 服务中传入的无效日期时间值
我目前正在编写一个必须匹配现有 wsdl 的 C# web 服务,并且我的 web 服务由第三方 web 服务调用(我的 web 服务充当回调)。
但是我被传递了无效的值,第三方网络服务不愿意改变他们的网络服务。
我得到:'2010-10-24 12:12:13' 在 xml 中键入字符串作为 DateTime,(不符合规范,因为它必须是 '2010-10-24T12:12:13' ) 有没有办法覆盖 XML 序列化,使其仍然匹配 wsdl 但接受“任何东西”?
c# - 无法取消实现此 XML
只是为了找点乐子,我在玩 Last.fm 的 API。他们返回给顶级艺术家的 XML 文件结构如下:
这就是我如何去实现它。
我有一个名为 lfmStatus 的类:
还有一类艺术家:
然后我使用这段代码去实现:
现在,如果该代码没有包含所有艺术家的 topartists 标记,则该代码非常适用于 XML。但既然它确实如此,我该如何更改我的代码来处理它?我假设我需要添加另一个类。
powershell - 在 PowerShell 中加载序列化的 DataTable - 返回 DataRows 数组而不是 DataTable
我正在尝试在 PowerShell 中保存和加载 DataTable。我这样保存:
并像这样加载它:
但是我得到的类型是一个 Rows 数组而不是一个 DataTable!这给我带来了重大问题,因为它需要传递到需要 DataTable 的函数中,并且不能强制转换为一个。
非常感谢任何帮助,谢谢。
.net - Deserialize InnerXML to an Object in .NET
I am working with a large xml file containing unbounded collections. The idea is to use XmlReader to read the file and to deserialize the inner xml into an object and do further processing.
The XML structure is something like this:
Everything goes well using XMLReader wrapping around XMLTextReader to read the file. However when I tried to deserialize individual apple into an object it throws InvaildOperationException.
Anyone knows whats the problem? Is there a better way to do it?
Here are the code fragments
c# - 给定 System.Type T,反序列化列表
我有许多要序列化和反序列化的类。我正在尝试创建一个函数,在给定类型(“用户”、“管理员”、“文章”等)的情况下,它将使用这些项目的列表对文件进行反序列化。例如:
我不知道如何实现上述目标,但我设法让它工作:
问题是我必须通过 "ugly"typeof(List<Article>)
而不是 "pretty" typeof(Article)
。
当我尝试这个时:
...我收到一个错误
问题:我怎样才能修复我GetAllItems()
能够像这样调用函数并让它返回一个列表:
谢谢!
c# - 从 List 中获取一个元素基于身份证
这个问题与这个问题有关: Given System.Type T, Deserialize List<T>
给定这个函数来检索所有元素的列表......
...我想创建一个函数来检索具有所需 UID(唯一 ID)的项目中的一项:
但是,这不起作用,因为GetAllItems<typeof(T)>();
呼叫没有正确形成。
问题 1a:鉴于所有将调用 GetItemByID() 的类都将 UID 作为其中的元素,我如何修复第二个函数以正确返回唯一元素?如果可能的话,我很想能够做到 public static <T> GetItemByID<T>(int UID)
。
问题 1b:同样的问题,但假设我不能修改 GetItemByID 的函数原型?