通过本文主要向大家介绍了datatable,jquery datatable,c datatable,datatable select,datatable排序等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题背景:
在做考试系统手动生成试卷部分时由于题库的表结构不相同,导致同样的Gridview(已模板化后的,其结构已固定)在显示时不能同时两种不同结构的数据。如GridView结构如下所示:
这种固定的格式显示的是以选择题为代表的数据结构,但是因为选择题题库表结构与论述题题库表结构不相同,所以无法直接显示以论述题为代表的数据结构。这时如何在这个固定的GridView中显示不同的数据呢?其实在仔细观察后我们可以发现他们唯一的区别在于“答案”这列的数据不同,在选择题类型中,该字段的值仅为一个选项而已,但是对于论述题等类型,其问题有六个,对应的答案也应该有六列才对。分析到此,可以总结一下,最终要解决的问题是如何将六列的答案显示在一列。
解决办法:将六个字段中的内容用sql语句实现合并,将其作为一个新的字段显示出来,具体的实现请看代码:
其中使用cast函数的strSql语句所起到的作用就是将多个字段合并成一个新字段。另外需要注意的是strSql语句中的 “ + ” 号,如果需要合并的字段的内容是Text类型的,是不支持该符号的,这时我们需要将其转换成nvarchar类型。到此多列合并问题完美解决。 </div>
在做考试系统手动生成试卷部分时由于题库的表结构不相同,导致同样的Gridview(已模板化后的,其结构已固定)在显示时不能同时两种不同结构的数据。如GridView结构如下所示:

这种固定的格式显示的是以选择题为代表的数据结构,但是因为选择题题库表结构与论述题题库表结构不相同,所以无法直接显示以论述题为代表的数据结构。这时如何在这个固定的GridView中显示不同的数据呢?其实在仔细观察后我们可以发现他们唯一的区别在于“答案”这列的数据不同,在选择题类型中,该字段的值仅为一个选项而已,但是对于论述题等类型,其问题有六个,对应的答案也应该有六列才对。分析到此,可以总结一下,最终要解决的问题是如何将六列的答案显示在一列。
解决办法:将六个字段中的内容用sql语句实现合并,将其作为一个新的字段显示出来,具体的实现请看代码:
其中使用cast函数的strSql语句所起到的作用就是将多个字段合并成一个新字段。另外需要注意的是strSql语句中的 “ + ” 号,如果需要合并的字段的内容是Text类型的,是不支持该符号的,这时我们需要将其转换成nvarchar类型。到此多列合并问题完美解决。 </div>
您可能想查找下面的文章:
- .Net core下直接执行SQL语句并生成DataTable的实现方法
- .Net core下直接执行SQL语句并生成DataTable的实现方法
- 利用ASP.NET MVC和Bootstrap快速搭建个人博客之后台dataTable数据列表
- ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
- asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)
- 在ASP.NET 2.0中操作数据之六十八:为DataTable添加额外的列
- Asp.net MVC 中利用jquery datatables 实现数据分页显示功能
- DataSet与DataTable的区别示例介绍
- 获取DataRow[]的值示例
- DataSet、DataTable、DataRow区别详解