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

时间:2014-10-12 04:24:17

标签: c# json

这是我的反序列化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#类做这样的事情。

2 个答案:

答案 0 :(得分:0)

在你的反序列化对象上,你应该可以做一些非常相似的事情,尽管你的C#表示中的命名略有不同。而不是'PageLayout'你有'pageLayouts'而不是'PageControl'你有'pageControls'。这是否适合您访问PageID?

pageLayouts[0].pageControls[1].pageID

答案 1 :(得分:0)

C#喜欢名字。假设你有一个像这样的PageLayout列表...

var pages = getPayLayout();
var thePage= pages.Where(p=>p.Layout == "Somevalue").ToList().First();
var pControl = thePage.pageControls.Where(p=>p.pageID == "value").ToList().First();