【发布时间】:2017-06-02 23:35:44
【问题描述】:
我有一个如下所示的对象模型:
public class Myclass
{
public int Id { get; set; }
public string name { get; set; }
public int age { get; set; }
}
public ContentResult GetList(List<Myclass> model)
{
var list = JsonConvert.SerializeObject(
model,
Formatting.Indented,
new JsonSerializerSettings()
{
ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore
});
return Content(list, "application/json");
}
我需要输出:
[[1,"name1",23],[2,"name2",30],[3,"name3",26],[4,"name4",29]]
【问题讨论】:
-
您需要提供有关您当前获得的内容的更详细信息...您在所需输出中显示的 JSON 不是有效的 JSON,从您的代码来看,您实际上可能得到了正确的 JSON
-
我应该澄清一下 - 当我说它不是有效的 JSON 时,我的意思是它不代表绑定到任何类型对象结构的 JSON。
-
那是因为该方法返回了正确的 JSON?您想要一个数组类型不一致(字符串和整数)的数组吗?您可能必须手动生成这些字符串,因为世界上没有序列化程序可以生成那种输出
-
如果您真正想要的是一个数组数组,那么在序列化之前将您的列表转换为该类型:
model.Select(m => new object[] { m.Id, m.name, m.age }); -
@RobertPetz 世界上没有一个序列化器会产生这种输出 - 确定吗? Computer says no
标签: c# json asp.net-mvc json.net