列表到 Jquery 数据表 c#
List to Jquery Datatable c#
我正在尝试使我的列表填充我的jquery数据表,但我无法这样做,目前我将我的列表写入文件以通过view-model
中的data表访问它,我的方法是正确的吗?
这是我的代码:
List<string> list = new List<string>();
foreach (var item in db.Pos)
{
var total = 0;
decimal costo = 0;
for (int i = 1; i <= 31; i++)
{
var value = 0;
if (item.Fecha.Day == i) { value = item.Cantidad; costo = costo + item.Total; }
total += value;
}
list.Add(item.Descripcion);
list.Add(item.Pdv);
list.Add(item.Rid);
list.Add(((costo / (total + 1)).ToString("C")));
for (int i = 1; i <= 31; i++)
{
var value = 0;
list.Add(value.ToString());
int month = item.Fecha.Month;
if (item.Fecha.Day == i) { value = item.Cantidad; list.Add(value.ToString()); }
}
list.Add(total.ToString());
list.Add((((costo / (total + 1)) * total).ToString("C")));
}
var json = JsonConvert.SerializeObject(new List<object>() { list });
System.IO.File.WriteAllText(@"'path.txt", json);
还有我的数据表 Ajax 调用:
$(document).ready(function () {
var table = $('#pftable_hdr').DataTable({
ajax: {
url: "/path.txt",
dataSrc: ""
},
scrollY: "500px",
scrollX: true,
scrollCollapse: true,
fixedColumns: {
leftColumns: 3
}
});
});
我的 Txt 文件输出的一部分:
[["ENS FRUTAS","REST","CENAS","$26.50","0","1","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","$26.50","CAFE AMER ILIMIT","REST","CENAS","$11.50","0","1","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","$11.50","QUESADILLAS TRAD (2)","REST","CENAS","$25.50","0","1","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1","$25.50"]]
如何用我的列表填充我的 Jquery 数据表?我的文本文件应该在$data
之前和之后都有[]
,但我不能只在文件的第一个和最后发生这种情况。
后端代码应如下所示。通过这样做,它将构建一个如下所示的 JSON 字符串:[["","",""...],["","",""...],["","",""...]]
List<List<string>> list = new List<List<string>>();
foreach (var item in db.Pos)
{
List<string> listItem = new List<string>();
var total = 0;
decimal costo = 0;
for (int i = 1; i <= 31; i++)
{
var value = 0;
if (item.Fecha.Day == i) { value = item.Cantidad; costo = costo + item.Total; }
total += value;
}
listItem.Add(item.Descripcion);
listItem.Add(item.Pdv);
listItem.Add(item.Rid);
listItem.Add(((costo / (total + 1)).ToString("C")));
for (int i = 1; i <= 31; i++)
{
var value = 0;
listItem.Add(value.ToString());
int month = item.Fecha.Month;
if (item.Fecha.Day == i) { value = item.Cantidad; listItem.Add(value.ToString()); }
}
listItem.Add(total.ToString());
listItem.Add((((costo / (total + 1)) * total).ToString("C")));
list.Add(listItem);
}
var json = JsonConvert.SerializeObject(list);
System.IO.File.WriteAllText(@"'path.txt", json);
像这样尝试
list.Add("[");
list.Add(item.Descripcion);
// rest code....
list.Add((((costo / (total + 1)) * total).ToString("C")));
list.Add("]");
这对您的情况有用吗?让大家知道您的意见
var json = JsonConvert.SerializeObject(new List<object>() { list });
在上面的行列表中已经是一个对象,那么为什么要创建一个新对象并为该对象分配"列表"。
尝试如下:
var json = JsonConvert.SerializeObject(list);
这将为您提供所需的结果
相关文章:
- 用程序搜索JQuery数据表中的文本
- jquery数据表的自定义ko绑定
- jquery数据表在初始化时设置宽度
- 如何通过下拉值更改来更改jquery数据表的值
- 无法删除数据表jquery中的多行
- 为什么分页数据表JQuery没有'不要使用JSF ui:重复
- 数据表jquery分页和colreorder
- 如何在字符串中包含隐藏的 HTML 元素 - 数据表 - jquery
- 数据表 jQuery 无法重新初始化数据表
- 使用数据表 jQuery 将数据插入到特定列单元格中
- 数据表 jQuery 单击事件在分页后不起作用
- 我怎么能得到值从tfoot数据表jquery
- 如何获得DOM的单元格在单列与隐藏行在数据表jquery
- 数据表(JQuery)关于如何多列过滤文本框中给定的包含数据的数组
- 滚动到选定的行在数据表jQuery插件
- 添加复选框到数据表JQuery服务端
- 数据表(jQuery的表插件)在离开和返回数据表时继续您离开的地方
- 数据表&JQuery在IE8中被破坏
- 更改数据表jquery Header&页脚宽度
- 创建自定义搜索框的数据表JQuery插件