繁体   English   中英

从对象的json数组获取WebMatrix C#对象的数组

[英]Get WebMatrix C# array of objects from json array of objects

假设json文件(json对象)看起来像这样(对象数组):

{
    "job": [
        {
            "title": "Mechanic",
            "department": "Central Repair Department",
            "summary": "Repair and perform preventative maintenance to vehicles and equipment.",
            "qualifications": "High school diploma or equivalent, valid Oklahoma driver's license, general knowledge of operating principals of gasoline and diesel engines, and experience with mechanical repair of vehicles. Basic knowledge of hydraulics and equipment is also desirable.",
            "incentive": "",
            "wage": ""
        },
        {
            "title": "Police Patrol Officer",
            "department": "Police Department",
            "summary": "Repair and perform preventative maintenance to vehicles and equipment.",
            "qualifications": "High school diploma or equivalent, valid Oklahoma driver's license, general knowledge of operating principals of gasoline and diesel engines, and experience with mechanical repair of vehicles. Basic knowledge of hydraulics and equipment is also desirable.",
            "incentive": "",
            "wage": ""
        }
    ]
}

如何获得用这些值绘制的对象数组?

如果您熟悉如何在WebMatrix的C#中执行此操作,请回答(这与常规C#不同,也就是说,没有JsonReader方法,JObject方法或其他C#建议所指示的其他方法)。 虽然,我想这是“ 可能 ”,我无法找到使用指令的一些方法正确,但再次WebMatrix中的细微差别也给我留下了没有办法找到这些信息,如果它确实存在。

另外,我不知道什么是LINQ或如何使用它,也不关心,除非它绝对是最好/最简单的方法。

我在WebMatrix中注意到的一些与json有关的非静态方法包括“ DynamicJsonObject”和“ DynamicJsonArray”,但是,是使用文件路径(是否使用Server.MapPath)还是仅将文件的完整json文件存储为一个字符串变量,我尝试与这些方法一起使用的任何方法均未成功。

没有简单的方法可以从对象的json数组简单地创建对象的C#数组吗?

谢谢你的帮助! 如果您需要任何进一步的信息,请告诉我。

您可以使用Json Helper将JSON解码为动态对象。 假设您在上面发布的JSON位于名为JsonFile.txt的文件中,则将执行以下操作:

@{
    var json = File.ReadAllText(Server.MapPath("~/JsonFile.txt"));
    var data = Json.Decode(json);
}

<!DOCTYPE html>

<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
        @foreach(var j in data.job){
            <h3>@j.title</h3>
            <div>@j.summary</div>
        }
    </body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM