C#实现库存管理系统显示物料信息时报500错(DataTables warning: table id=myTable1 - Ajax error.)
看了其他人的错误,有的是字段问题,有的是数据库权限问题
自己的问题是数据库表中创建时间字段为空了
应加个判断
$(function() { var cols = [ { data: "Id", name: "Id", orderable: false }, { data: function (e) { if (e.CreateTime) { return e.CreateTime.toString().getDate(); } else { return ""} }, name: "CreateTime", orderable: true } ];
})
还需要更改Service层的代码
public ResultDto<Base_GoodsTypeDto> GetPageList(QueryBase queryBase, Expression<Func<Base_GoodsTypeDto, bool>> exp)
{
using (var db = new WarehouseContext())
{
var where = exp.Cast<Base_GoodsTypeDto, Base_GoodsType, bool>();
var query = db.Base_GoodsType.AsNoTracking().Where(where).Select(x => new Base_GoodsTypeDto
{
TypeID=x.TypeID,
Name=x.Name,
State=x.State,
UserID=x.UserID,
LastTime=x.LastTime
}).OrderBy(queryBase.OrderBy, queryBase.OrderDir);
var query_count = query.Count();
var query_list = query.Skip(queryBase.Start).Take(queryBase.Length).ToList();
var dto = new ResultDto<Base_GoodsTypeDto>
{
recordsTotal = query_count,
//data = Mapper.Map<List<Base_Goods>, List<Base_GoodsDto>>(query_list)
data = query_list
};
return dto;
}
}