asp.net XML转JSON

简介: 先用Linq查询XML节点,再转换成List或Model,再用Json.NET转为Json 好处是可以随时返回List XML EricSun 123456 Hello I'm from Dalian ...

先用Linq查询XML节点,再转换成List或Model,再用Json.NET转为Json

好处是可以随时返回List

XML

<?xml version="1.0" encoding="utf-8" ?>
    <Users>
        <User ID="111111">
        <name>EricSun</name>
        <password>123456</password>
        <description>Hello I'm from Dalian</description>
    </User>
    <User ID="222222">
        <name>Ray</name>
        <password>654321</password>
        <description>Hello I'm from Jilin</description>
        </User>
    </Users>

C#代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
using Newtonsoft.Json;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            List<User> list = new List<User>();
            List<User> list2 = new List<User>();

            XElement rootNode = XElement.Load(@"D:\234.xml");

            //第一种查询
            var mynode = (from r in rootNode.Descendants("User")
                          select r).ToList();

            foreach (var item in mynode)
            {
                User model = new User();
                model.name = item.Element("name").Value;
                model.password = item.Element("password").Value;
                model.description = item.Element("description").Value;
                list.Add(model);
            }
            //第一种查询结束

            //转换为JSON
            string json = JsonConvert.SerializeObject(list);

            //第二种查询
            var mynode2 = from r2 in rootNode.Descendants("User")
                          select new
                              {
                                  Name = r2.Element("name").Value,
                                  Password = r2.Element("password").Value,
                                  Description = r2.Element("description").Value
                              };

            foreach (var item in mynode2)
            {
                User model = new User();
                model.name = item.Name;
                model.password = item.Password;
                model.description = item.Description;
                list2.Add(model);
            }
           //第二种查询结束

            //转换为JSON
            string json2 = JsonConvert.SerializeObject(list2);


            Console.ReadKey();
        }
    }

    public class User
    {
        public string name { get; set; }

        public string password { get; set; }

        public string description { get; set; }
    }
}
目录
相关文章
|
3月前
|
XML 存储 JSON
Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
本文介绍了Twaver HTML5中的数据序列化,包括XML和JSON格式的序列化与反序列化方法。文章通过示例代码展示了如何将DataBox中的数据序列化为XML和JSON字符串,以及如何从这些字符串中反序列化数据,重建DataBox中的对象。此外,还提到了用户自定义属性的序列化注册方法。
50 1
|
4月前
|
XML JSON 前端开发
【Web前端揭秘】XML与JSON:数据界的双雄对决,你的选择将如何改写Web世界的未来?
【8月更文挑战第26天】本文深入探讨了XML和JSON这两种广泛使用的数据交换格式在Web前端开发中的应用。XML采用自定义标签描述数据结构,适用于复杂层次数据的表示,而JSON则以键值对形式呈现数据,更为轻量且易解析。通过对两种格式的示例代码、结构特点及应用场景的分析,本文旨在帮助读者更好地理解它们的差异,并根据实际需求选择最合适的数据交换格式。
72 1
|
3月前
|
XML JSON 数据处理
C# 中的 XML 与 JSON 数据处理
在现代软件开发中,数据交换和存储需求日益增长,XML 和 JSON 成为最常用的数据格式。本文从 C# 角度出发,详细介绍如何处理这两种格式,并提供示例代码。对于 XML,我们介绍了读取、创建和写入 XML 文件的方法;对于 JSON,则展示了如何使用 Newtonsoft.Json 库进行数据解析和序列化。此外,文章还总结了常见问题及其解决方案,帮助开发者更好地应对实际项目中的挑战。
196 61
C# 中的 XML 与 JSON 数据处理
|
2月前
|
XML JSON 数据可视化
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
本文详细介绍了不同数据集格式之间的转换方法,包括YOLO、VOC、COCO、JSON、TXT和PNG等格式,以及如何可视化验证数据集。
314 1
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
|
2月前
|
XML JSON 前端开发
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
552 0
|
4月前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
122 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
4月前
|
Java Spring 容器
彻底改变你的编程人生!揭秘 Spring 框架依赖注入的神奇魔力,让你的代码瞬间焕然一新!
【8月更文挑战第31天】本文介绍 Spring 框架中的依赖注入(DI),一种降低代码耦合度的设计模式。通过 Spring 的 DI 容器,开发者可专注业务逻辑而非依赖管理。文中详细解释了 DI 的基本概念及其实现方式,如构造器注入、字段注入与 setter 方法注入,并提供示例说明如何在实际项目中应用这些技术。通过 Spring 的 @Configuration 和 @Bean 注解,可轻松定义与管理应用中的组件及其依赖关系,实现更简洁、易维护的代码结构。
62 0
|
5月前
|
XML JSON 缓存
优化Java中XML和JSON序列化
优化Java中XML和JSON序列化
|
6月前
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
40 0
|
6月前
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
38 0