【问题标题】:Trying to serialize a XML to JSon c#尝试将 XML 序列化为 JSON c#
【发布时间】:2015-11-10 21:21:27
【问题描述】:

我是 C# 新手,在我的工作中,我有一个返回此 xml 的应用程序

 <ListaResultado PaginaAtual="1" TotalPaginas="1">
      <ItemMenu name="consultas" id="123" caminho="abc" />
     <ItemMenu name="consultas2" id="123" caminho="abc2" />
     <ItemMenu name="consultas3" id="123" caminho="abc3" />
</ListaResultado>

并且输出 no it's nod valid 导致最终结果它是

"ListaResultado":{"PaginaAtual":1,"TotalPaginas":"3", 
"ItemMenu":{"name":"consultas", "id":"123", "caminho":"abc"},
"ItemMenu":{"name":"consultas2", "id":"123", "caminho":"abc2"},
"ItemMenu":{"name":"consultas3", "id":"123", "caminho":"abc3"}}

我需要正确的

"ItemMenu":[{"name":"consultas", "id":"123", "caminho":"abc"},{"name":"consultas2", "id":"123", "caminho":"abc2"},{"name":"consultas3", "id":"123", "caminho":"abc3"}]

有人知道吗?我发现的示例使用 que 正确的 xml 123,这不是我的情况...... 谢谢!!!

【问题讨论】:

  • 因此解析 XML 并将其重新序列化为 JSON。你有这个问题吗(如果是这样,发布你的代码以及你到底哪里出错了)?
  • 你是怎么得到json的?

标签: c# asp.net json xml


【解决方案1】:

首先您可以使用LoadXml,然后使用JSON.NET 将其重新序列化为 JSON:

    XmlDocument xml = new XmlDocument();
    xml.LoadXml(@"<ListaResultado PaginaAtual='1' TotalPaginas='1'>
          <ItemMenu name='consultas' id='123' caminho='abc' />
          <ItemMenu name='consultas2' id='123' caminho='abc2' />
          <ItemMenu name='consultas3' id='123' caminho='abc3' />
     </ListaResultado>");
    var doc = JsonConvert.SerializeXmlNode(xml);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    • 2012-03-06
    相关资源
    最近更新 更多