MVC+EF bootstrap-table使用DataTable

  MVC+EF返回数据集时都会对应一个实体,这种情况当然是确定的实体,但是当返回的实体是不确定的又该如何?思前想后,觉得datatable应该可以满足需求,但是当兴致勃勃的组合完sql按照以前的方式( return Json(new { total = pageCount, rows = list }, JsonRequestBehavior.AllowGet);)返回json时前台接收报错 ”序列化类型为“System.Reflection.RuntimeModule”的对象时检测到循环引用“ 【具体原因还不是很清楚】 但是感觉就是序列化json对象是失败,转而考虑直接返回json格式字符串,代码如下:

1 JsonSerializerSettings setting = new JsonSerializerSettings()
2                 {
3                     ReferenceLoopHandling = ReferenceLoopHandling.Ignore
4                 };
5
6                 var ret = "{\"total\":" + dt.Rows.Count + ",\"rows\":" + JsonConvert.SerializeObject(dt, setting) + "}";
7
8                 return Json(ret, JsonRequestBehavior.AllowGet);

确实前台不再报上述错误,但是加载不上数据,查看了bootstrap-table api发下有个responseHandler属性:加载服务器数据之前的处理程序,可以用来格式化数据。遂再次方法中尝试把取得的数据转换成json对象,如下代码:

responseHandler: function (res) { //后台数据源为datatable返回json字符串,需要处理成json对象
res = eval(‘(‘ + res + ‘)‘)
return res;
}

最终数据成功加载。文章开头我提过动态的列头及bootstrap-table列头需要从数据库中动态获取,程序中我做了特殊处理前台会动态生成columns,后台也会动态生成datatable表头,下图显示效果。

原文地址:https://www.cnblogs.com/seanchang/p/8283514.html

时间: 2024-10-31 20:31:30

MVC+EF bootstrap-table使用DataTable的相关文章

使用MiniProfiler跟踪MVC + EF + Bootstrap 2 权限管理系统的性能消耗

安装MiniProfiler 在MVC + EF + Bootstrap 2 权限管理系统入门级(附源码)文章中下载了它的源码,调试模式下打开一个页面都要再2.5秒以上,所以使用MiniProfiler.MiniProfiler.MVC4 .MiniProfiler.EF6组件进行了分析. 首先,依次序安装组件.然后,修改Global.aspx.cs 文件: protected void Application_Start() { AreaRegistration.RegisterAllArea

在ASP.NET MVC中使用 Bootstrap table插件

Bootstrap table: http://bootstrap-table.wenzhixin.net.cn/zh-cn/getting-started/ 1. 控制器代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace AspDotNetMVCBootstrapTable.Controllers { pu

.Net MVC+bootstrap Table学习

一.效果展示 二.使用方法 1).相关css和js的引用 <link href="~/Themes/Bootstrap/css/bootstrap.css" rel="stylesheet" /> <link href="~/Themes/Bootstrap/css/bootstrap-table.css" rel="stylesheet" /> <!-----------------------

自己开发博客(ASP.NET MVC+EF CodeFrist)-历程小功能

自己开发博客(ASP.NET MVC+EF CodeFrist)-时间轴小功能 想写个类似时间轴的效果 就找了一个插件 前端不济 找了一个简单的插件地址http://sc.chinaz.com/jiaoben/130509308250.htm 这是实体类 public class TimnAxis : BaseEntity<int> { [Required(ErrorMessage = "{0}是必须的")] [Display(Name = "时间")]

MVC+EF 理解和实现仓储模式和工作单元模式

MVC+EF 理解和实现仓储模式和工作单元模式 原文:Understanding Repository and Unit of Work Pattern and Implementing Generic Repository in ASP.NET MVC using Entity Framework 文章介绍 在这篇文章中,我们试着来理解Repository(下文简称仓储)和Unit of Work(下文简称工作单元)模式.同时我们使用ASP.NET MVC和Entity Framework 搭

ASP.NET MVC使用Bootstrap系列(3)——使用Bootstrap 组件

Bootstrap为我们提供了十几种的可复用组件,包括字体图标.下拉菜单.导航.警告框.弹出框.输入框组等.在你的Web Application中使用这些组件,将为用户提供一致和简单易用的用户体验. Bootstrap组件本质上是结合了各种现有Bootstrap元素以及添加了一些独特Class来实现.Bootstrap元素我在上一篇文章中涉及到,具体可以参考<ASP.NET MVC使用Bootstrap系列(2)——使用Bootstrap CSS和HTML元素>. 在这篇博客中,我将继续探索B

asp.net html table to DataTable

添加引用 http://htmlagilitypack.codeplex.com/downloads/get/437941 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 protected void Export(string content,string file)     {  

mvc的视图中显示DataTable的方法

mvc的视图中显示DataTable的方法: 不断的循环画出table @{ ViewBag.Title = "ShowDataTable"; } @using System.Data; @model Models.ConModel @{ var table = Model.ExcelTable as DataTable; } <script src="~/Scripts/My97DatePicker/WdatePicker.js"></scrip

JS表格组件神器bootstrap table详解(基础版)

这篇文章主要介绍了JS表格组件神器bootstrap table,bootstrap table界面采用扁平化的风格,用户体验比较好,更好兼容各种客户端,需要了解更多bootstrap table的朋友可以参考下 一.Bootstrap Table的引入 关于Bootstrap Table的引入,一般来说还是两种方法: 1.直接下载源码,添加到项目里面来.由于Bootstrap Table是Bootstrap的一个组件,所以它是依赖Bootstrap的,我们首先需要添加Bootstrap的引用.