Javascript 在MVC5上更改JSON输出

Javascript 在MVC5上更改JSON输出,javascript,asp.net-mvc,json,datatable,Javascript,Asp.net Mvc,Json,Datatable,我正在将我的模型的json输出与JavaScript集成 datatables期望: { "draw":1, "recordsTotal":57, "recordsFiltered":57, "data":[ [ "Airi", "Satou", "Accountant", "Tokyo", "28th Nov 08", "$162,700"

我正在将我的模型的json输出与JavaScript集成

datatables期望:

{
   "draw":1,
   "recordsTotal":57,
   "recordsFiltered":57,
   "data":[
      [
         "Airi",
         "Satou",
         "Accountant",
         "Tokyo",
         "28th Nov 08",
         "$162,700"
      ],
      [
         "Airi",
         "Satou",
         "Accountant",
         "Tokyo",
         "28th Nov 08",
         "$162,700"
      ],...
   ]
}
但我的模型显示:

[
   {
      "Column1":"data",
      "Column2":"data",
      "Column3":"data",
      "Column4":"data",
      "Column5":"data"
   },
   {
      "Column1":"data",
      "Column2":"data",
      "Column3":"data",
      "Column4":"data",
      "Column5":"data"
   },...
]
我的模型定义为:

Public Class DataForAJAX
    Public Property Column1() As String
    Public Property Column2() As String
    Public Property Column3() As String
    Public Property Column4() As String
    Public Property Column5() As String

End Class
我使用Dapper加载(DataForAjax的)IEnumerable

是否仍然可以输出数据表所需的内容?正如您可能已经注意到的,我正在专门针对datatables查看json中的数据节点,但也希望填充记录的数量。不知怎么的,我搞不懂。如果是PHP或经典ASP,我会很容易地生成:)


感谢您为我提供的建设性帮助,为我指明了正确的方向

创建一个DTO类,该类按照您想要的数据格式建模,即创建属性名和层次结构,就像您希望的输出JSON一样。然后,手动将您的模型映射到此类,或者使用AutoMapper之类的工具将过程自动化,并将您的数据作为结果发送回去。

我接受了Chriss Pratt所说的内容,并对我最初尝试做的事情进行了更多的研究。最后,我创建了一个容器模型:

Public Class DataForAJAXContainer
   Public Property recordsTotal() as Integer
   Public Property recordsFilteredTotal() as Integer
   Public Property draw() as Integer
   Public Property data() as List(Of List(Of String))
End Class
然后我创建一个列表项,循环浏览数据库结果,并将每一列添加到列表中

Dim l as New List
l.Add(Column1)
l.Add(Column2)
l.Add(Column3)
l.Add(Column4)
l.Add(Column5)
然后我将它添加到我的容器模型中

Dim c as New DataForAJAXContainer
c.data.Add(l)
这一切都发生在通过每个DataForAJAX对象的循环中

然后,模型的JSON输出结果采用datatables期望的格式


如果有人有更好/更干净的解决方案,那么听到并了解这一点就太棒了

你能详细说明一下吗?我确实尝试了你的建议,但我的尝试并没有真正达到我想要的格式。你有什么建议吗?谢谢Chris,你的评论帮了我正确的方向,我对此投了赞成票,但也会添加(修改模型的)答案