我有一个反序列化Json C#类,现在我想从中获取信息

本文关键字:信息 获取 反序列化 有一个 Json | 更新日期: 2023-09-27 18:26:18

这是我的反序列化JSON响应C#类

    public class Apppage
    {
        public Pagelayout[] pageLayouts { get; set; }
        public string pageName { get; set; }
        public string pageType { get; set; }
    }
    public class Pagelayout
    {
        public string layout { get; set; }
        public Pagecontrol[] pageControls { get; set; }
    }
    public class Pagecontrol
    {
        public string __type { get; set; }
        public string controlType { get; set; }
        public int height { get; set; }
        public int pageID { get; set; }
        public bool visible { get; set; }
        public int width { get; set; }
        public string text { get; set; }
        public string textColor { get; set; }
        public string type { get; set; }
        public bool autoSize { get; set; }
        public string labelPosition { get; set; }
        public bool showLabel { get; set; }
    }

我想做的是像我在javascript 中做的那样

例如:PageLayout[0].PageControl[1].pageID

我可以用这个C#类做这样的事情吗。

我有一个反序列化Json C#类,现在我想从中获取信息

在反序列化的对象上,您应该能够做一些非常相似的事情,尽管C#表示中的命名略有不同。您有"pageLayouts"而不是"pageLayouts",您有"pageControls"而非"PageControl"。这在您访问PageID的情况下有效吗?

pageLayouts[0].pageControls[1].pageID
C#喜欢名字。假设您有这样的页面布局列表。。。
var pages = getPayLayout();
var thePage= pages.Where(p=>p.Layout == "Somevalue").ToList().First();
var pControl = thePage.pageControls.Where(p=>p.pageID == "value").ToList().First();