来自类的 C# Json 格式
本文关键字:Json 格式 | 更新日期: 2023-09-27 18:32:14
我有一个 C# 类
public class occ
{
public datetime from { get; set; }
public datetime to { get; set; }
public string Ktype { get; set; }
public flag bool { get; set; }
}
我从来自存储过程的 EF6.0 函数填充
我被要求为该类的每条记录创建一个这种格式的 Json
{
"Ktype": [
{
"from"
"to"
"flag"
}
]
}
我对 Json 有一点经验。这里的一些人帮助我赶上了。
直到现在我才知道"外部"属性(我不知道如何称呼它......对不起)来自类名。
在此示例中,Ktype 是类的一部分。
如何对此类进行 JSON 序列化并将 Ktype 作为外部 Json 属性?
我想要这样的东西:
{
"TRC": [{"from":"2016-02-09","to":"2016-02-16","flag":true}]
}
{
"TRX": [{"from":"2016-02-12","to":"2016-02-18","flag":false}]
}
如果我理解正确,也许这会对你有所帮助:
public class occ
{
public List<Ktype> ktype { get; set;}
public occ()
{
this.ktype = new List<Ktype>();
}
}
public class Ktype
{
public datetime from { get; set; }
public datetime to { get; set; }
public flag bool { get; set; }
}
以下内容在填充和序列化时会产生以下json
:
public class Root
{
public List<Ktype> Ktype { get; set; } = new List<Ktype>();
}
public class Ktype
{
public DateTime from { get; set; }
public DateTime to { get; set; }
public bool flag { get; set; }
}
杰森:
{
"Ktype": [{
"from": "2016-01-28T14:43:10.3103658+00:00",
"to": "2016-01-28T14:43:10.3103658+00:00",
"flag": true
}]
}
使用 Newtonsoft lib 中的SerializeObject
:
string json = JsonConvert.SerializeObject(new occ(), Formatting.Indented);
有关更多信息,请查看此内容
像这样创建一个 KTypeDto
public class KTypeDto
{
public List<KType> KTypes { get; set;}
}
public class KType
{
public Datetime From { get; set; }
public Datetime To { get; set; }
public Flag Bool { get; set; }
}