JSON映射如何重复赋值

这是json映射的类
public List List{ get; set; }

public class List
{
public string time{ get; set; }
public string textx_part { get; set; }
}
text后的x不是定值

time的赋值是一次赋值的
text_part从数据库拿出来时有多个值,需要通过foreach挨个赋值,

有什么方法能让最终json生成的形式如下么
"List":{
"time":“20220804”,
”text_part“:"abc",
"text1_part":"def",
"text2_part":"ghi"
}
如果要更改映射类格式也是可以的

这么做干嘛呢?想不到你的目的是啥,为啥不搞List来接收呢?都是顺序结构,如果一个值在数据库有多个,那么time和text_part就是一对多的关系,直接用List就可以啦

public List List{ get; set; }

public class List
{
public string time{ get; set; }
public List<string> textx_part { get; set; }
}


可以手动解析。

生成键值对,手动解析就行了


            Dictionary<string, string> dic = new Dictionary<string, string>() {
                { "time", "111111111"},
                { "text_part", "222"},
                { "text1_part", "333"},
                { "text2_part", "444"},
            };
            JObject obj = new JObject();
            JObject list_obj = new JObject();
            list_obj.Add("time", dic["time"]);
            list_obj.Add("text_part", dic["time"]);
            for (int i = 1; i < dic.Count - 1; i++) {
                string name = $"text{i}_part";
                list_obj.Add(name, dic[name]);
            }
            obj.Add("List",list_obj.ToString());
            string json = obj.ToString();
            Console.WriteLine(json);