相关疑难解决方法(0)

JSON.Net将集合序列化为数组数组

默认情况下,DataTables Ajax期望JSON数据是一个数组数组.

使用JSON.Net是可以通过属性/设置将集合序列化为数组而不是对象数组,或者是否必须通过自定义完成JsonConverter.我试图序列化的对象如下:

public class DeviceIndex
{
    public int Id { get; set; }

    [Display(Name = "Asset Tag")]
    public string AssetTag { get; set; }

    [Display(Name = "Lease End")]
    [DataType(DataType.Date)]
    public DateTime LeaseEndDate { get; set; }

    public string Type { get; set; }

    [Display(Name = "Operating System")]
    public string OperatingSystem { get; set; }

    public string Model { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的控制器动作如下:

public IActionResult IndexJson()
{
    var model = _db.Devices.Select(d => new DeviceIndex { …
Run Code Online (Sandbox Code Playgroud)

c# arrays json datatables json.net

7
推荐指数
1
解决办法
4702
查看次数

JSON反序列化 - 使用JSON.NET将数组索引映射到属性

我想将二维数组反序列化为.net对象的集合.原因是,我的用户可以更容易地在输入文件中使用数组语法.所以我只想将数组的索引映射到我的目标类型的特定属性.

EG用:

[
     ["John", "Smith", "23"],
     ["Paula", "Martin", "54]
]
Run Code Online (Sandbox Code Playgroud)

我会得到一个人的两个实例:

public class Person {
    public string First {get;set;}
    public string Last {get;set;}
    public string Age {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

其中内部数组的索引0映射到First,索引1映射到Last,索引2映射到Age;

有没有办法扩展Json.NET,以便我可以在反序列化期间进行映射,以便隐藏实现细节?我一直在玩一个自定义JsonConverter但我没有找到关于如何使用它的很多信息.

编辑:具体来说,我不确定是否JsonConverter正确使用,我无法弄清楚如何实现CanConvert以及如何使用传递给ReadJson方法的参数.

c# arrays json json.net

4
推荐指数
1
解决办法
2292
查看次数

如何使用 Json.Net 将 JSON 数组反序列化为对象?

我有一个有效的 JSON 对象,其中包含一个 JSON 数组。JSON 数组没有花括号,其中包含一个逗号分隔的混合类型列表。它看起来像这样:

{
    "ID": 17,
    "Days": 979,
    "Start_Date": "10/13/2012",
    "End_Date": "11/12/2012",
    "State": "",
    "Page": 1,
    "Test": "Valid",
    "ROWS": [
        [441210, "A", "12/31/2009", "OK", "Done", "KELLEY and Co'", "12/31/2009", "06/29/2010", "TEXAS", "Lawyers", 6, "", "<img src=\"/includes/images/Icon_done.gif\" border=\"0\" alt=\"Done\" title=\"Done\" />"],
        [441151, "B", "12/31/2009", "No", "In-process", "Sage & Co", "12/31/2009", "06/29/2010", "CALIFORNIA", "Realtor", 6, "", "<img src=\"/includes/images/Icon_InProcess.gif\" border=\"0\" alt=\"In Process\" title=\"In Process\" />"]
    ]
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个类来反映 JSON 结构,其中包含一个用于复杂数组的列表:

class myModel
{
    public int ID { get; set; } …
Run Code Online (Sandbox Code Playgroud)

c# json json.net

3
推荐指数
1
解决办法
1461
查看次数

标签 统计

c# ×3

json ×3

json.net ×3

arrays ×2

datatables ×1