使用JSON.NET将C#对象转换为JSON时,多余的'\'是逗号

夏普编码器

我正在使用JSON.NET库将C#列表转换为JSON。当我快速查看对象后将其转换后,我可以在每个属性中看到额外的“ \”。我通过控制器(asp.net MVC控制器)将此数据发送到JavaScript客户端之一。发送数据时,数据带有额外的“ \”。如何删除这些多余的“ \”?

我的控制器:

public class MyController : myBase
    {
        public string Get(string id = null, string userName = null)
        {
            List<Data> dataList = new List<Data>();

            Data d = new Data();
            d.Name = "FireFox";
            d.Folder = @"Testing\Mac OSX";
            dataList.Add(d);

            d = new Data();
            d.Name = "Safari";
            d.Folder = @"Testing\Mac OSX";
            dataList.Add(d);

            d = new Data();
            d.Name = "Chrome";
            d.Folder = @"Testing\Mac OSX";
            dataList.Add(d);

            d = new Data();
            d.Name = "FireFox";
            d.Folder = @"Testing\Windows";
            dataList.Add(d);

            d = new Data();
            d.Name = "Safari";
            d.Folder = @"Testing\Windows";
            dataList.Add(d);

            d = new Data();
            d.Name = "Chrome";
            d.Folder = @"Testing\Windows";
            dataList.Add(d);

            d = new Data();
            d.Name = "Internet Exploder";
            d.Folder = @"Testing\Windows";
            dataList.Add(d);


            d = new Data();
            d.Name = "Chrome";
            d.Folder = @"Testing\Linux";
            dataList.Add(d);

            d = new Data();
            d.Name = "Firefox";
            d.Folder = @"Testing\Linux";
            dataList.Add(d);

            d = new Data();
            d.Name = "Testing First Child";
            d.Folder = @"Testing";
            dataList.Add(d);

            d = new Data();
            d.Name = "First Child";
            d.Folder = null;
            dataList.Add(d);


            Node root = new Node();
            foreach (Data da in dataList)
            {
                Node parent = root;
                if (!string.IsNullOrEmpty(da.Folder))
                {
                    Node child = null;
                    foreach (string part in da.Folder.Split(new char[] {'\\'}, StringSplitOptions.RemoveEmptyEntries))
                    {
                        string name = part.Trim();
                        child = parent.children.Find(n => n.Name == name);
                        if (child == null)
                        {
                            child = new Node {Name = name};
                            parent.children.Add(child);
                        }
                        parent = child;
                    }
                }
                //Always adds the leaf node.
                parent.children.Add(new Node {Name = da.Name});
            }

            string output = JsonConvert.SerializeObject(root);
            return output;

        }

    }

    public class Data
    {
        public string Name { get; set; }
        public string Folder { get; set; }
    }

    class Node
    {
        public Node()
        {
            children = new List<Node>();
        }

        public List<Node> children { get; set; }
        public string Name { get; set; }
        public bool leaf { get; set; }
        public bool expanded { get; set; }
    }

firefox中的数据---其他控制器正在返回不带'\'的数据 在此处输入图片说明

额外的 '\' 在此处输入图片说明

如何删除这些“ \”?

a安

您正在以JSON序列化对象,然后通过方法返回此字符串-现在它是对象的字符串表示形式。然后,JSON Web服务API会使用此字符串,并对它进行编码以确保它是有效的JS字符串-因此所有引号都转义了。

基本上,您正在执行双重编码。代替字符串,直接返回根对象,一切就可以了:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将逗号分隔值转换为Javascript中的JSON对象

来自分类Dev

删除JSON对象上多余的逗号

来自分类Dev

由于C#中的逗号,无法解决将csv转换为json的问题

来自分类Dev

使用 .NET 使 Json 中的尾随逗号无效

来自分类Dev

在javascript中将JSON对象转换为逗号分隔的值

来自分类Dev

拆分逗号分隔的 JSON

来自分类Dev

将逗号分隔的JSON转换为换行分隔的节点

来自分类Dev

将逗号分隔的JSON转换为换行分隔的节点

来自分类Dev

将逗号分隔的字符串转换为 JSON

来自分类Dev

将JSON对象中用逗号分隔的字符串转换为数组

来自分类Dev

如何使用C#检测包含尾随逗号的无效JSON?

来自分类Dev

在 json 上映射并使用 javascript 转换为 html 时获得额外的逗号

来自分类Dev

C# 使用 newtonsoft json.net 将 json 数组转换为对象列表

来自分类Dev

将json转换为c#对象

来自分类Dev

如何使用C#将逗号分隔的字符串转换为小写

来自分类Dev

使用C#将逗号分隔的字符串转换为XML

来自分类Dev

如何使用C#将逗号分隔的字符串转换为小写

来自分类Dev

从文件解析逗号分隔的JSON

来自分类Dev

.json添加双引号逗号

来自分类Dev

.json添加双引号逗号

来自分类Dev

使用属性将C#中的对象转换为JSON

来自分类Dev

逗号分隔的JSON对象键列表

来自分类Dev

如何使用jquery替换json结果中的逗号?

来自分类Dev

如何使用Spark Scala在JSON元素之间添加逗号

来自分类Dev

在多态json上使用LINQ以逗号分隔的字段

来自分类Dev

使用logstash将日志行转换为逗号分隔的字段

来自分类Dev

使用shell将逗号分隔的值转换为列表

来自分类Dev

如何在php中将JSON对象转换为纯逗号分隔的字符串?

来自分类Dev

将C#对象转换为JSON或Javascript对象

Related 相关文章

  1. 1

    将逗号分隔值转换为Javascript中的JSON对象

  2. 2

    删除JSON对象上多余的逗号

  3. 3

    由于C#中的逗号,无法解决将csv转换为json的问题

  4. 4

    使用 .NET 使 Json 中的尾随逗号无效

  5. 5

    在javascript中将JSON对象转换为逗号分隔的值

  6. 6

    拆分逗号分隔的 JSON

  7. 7

    将逗号分隔的JSON转换为换行分隔的节点

  8. 8

    将逗号分隔的JSON转换为换行分隔的节点

  9. 9

    将逗号分隔的字符串转换为 JSON

  10. 10

    将JSON对象中用逗号分隔的字符串转换为数组

  11. 11

    如何使用C#检测包含尾随逗号的无效JSON?

  12. 12

    在 json 上映射并使用 javascript 转换为 html 时获得额外的逗号

  13. 13

    C# 使用 newtonsoft json.net 将 json 数组转换为对象列表

  14. 14

    将json转换为c#对象

  15. 15

    如何使用C#将逗号分隔的字符串转换为小写

  16. 16

    使用C#将逗号分隔的字符串转换为XML

  17. 17

    如何使用C#将逗号分隔的字符串转换为小写

  18. 18

    从文件解析逗号分隔的JSON

  19. 19

    .json添加双引号逗号

  20. 20

    .json添加双引号逗号

  21. 21

    使用属性将C#中的对象转换为JSON

  22. 22

    逗号分隔的JSON对象键列表

  23. 23

    如何使用jquery替换json结果中的逗号?

  24. 24

    如何使用Spark Scala在JSON元素之间添加逗号

  25. 25

    在多态json上使用LINQ以逗号分隔的字段

  26. 26

    使用logstash将日志行转换为逗号分隔的字段

  27. 27

    使用shell将逗号分隔的值转换为列表

  28. 28

    如何在php中将JSON对象转换为纯逗号分隔的字符串?

  29. 29

    将C#对象转换为JSON或Javascript对象

热门标签

归档