为了简单起见。该示例中省略M层的描述,直接通过VC两层来实现.Net web编程中的表格基本绘制实现

新建一个MVC项目(我用的是visual studio 2017)

VS2017 web MVC 工程

我用的是一个包含模板MVC工程,新建之初就具备很完善的页面形态。

在实际网页设计中,模板的使用可以为我们节省很多时间,带来不少的便利。

我们就在该模板的一个About页面里用表格的形式展现“九九乘法口诀表”


“About”页面位于"HomeController.cs"中

About页面的控制器

控制器修改

原About函数

 public ActionResult About(){ViewBag.Message = "Your application description page.";return View();}

修改后的About函数

 public ActionResult About(){ViewBag.Message = "Your application description page.";string[,] val = new string[10, 10];for (int i = 1; i < 10; i++)val[i, 0] = val[0, i] = i.ToString();for(int i=1;i<10;i++)for(int j=i;j<10;j++){val[i, j] = i + "*" + j + "=" + (i * j);}return View(val);}

通过比较,不难看出,修改后的函数中,我是通过数组的方式写入了“九九乘法表”,并通过传参给View(),将数据送到视图上。


视图修改

About页面的视图

原视图代码

@{ViewBag.Title = "About";
}
<h2>@ViewBag.Title.</h2>
<h3>@ViewBag.Message</h3>

修改后的视图代码

@{ViewBag.Title = "About";
}
<h2>@ViewBag.Title.</h2>
<h3>@ViewBag.Message</h3><p>九九乘法表</p>@{string[,] val = (string[,])Model;int Rows = val.GetLength(0);int Cols = val.GetLength(1);
}<table class="table"><caption class="caption">九九乘法表格</caption><thead ><tr>@{for (int c = 0; c < Cols; c++){<td>@val[0, c]</td>}}</tr></thead>@{ for(int r=1;r<Rows;r++){<tr>@{ for(int c=0;c<Cols;c++){<td>@val[r,c]</td>}}</tr>}}
</table>

两个代码的区别也一目了然,代码中,我们首先获取控制器传来的数组参数,

@{string[,] val = (string[,])Model;int Rows = val.GetLength(0);int Cols = val.GetLength(1);
}

其中“@”是Razor语法的一部分。主要作用是可以让您将基于服务器的代码(Visual Basic 和 C#)嵌入到网页中。可以点击链接查看详细信息

ASP.NET Razor 标记 | 菜鸟教程​www.runoob.com

紧接着就是创建HTML表了,该部分的原型是

<table border="1"><tr><th>Header 1</th><th>Header 2</th></tr><tr><td>row 1, cell 1</td><td>row 1, cell 2</td></tr><tr><td>row 2, cell 1</td><td>row 2, cell 2</td></tr>
</table>

Html表格原型

除却样式部分,就比较Html标签的构成方式,可以理解出C#从内存数据表转换为页面表的过程,实际就是通过Razor语句自动补充Html表格单元格标签的过程。

于是我们简单的网页九九乘法表就这么造好了。

运行结果

将程序仿web表原型细微改写下

<table class="table"><caption class="caption">九九乘法表格</caption><thead ><tr>@{for (int c = 0; c < Cols; c++){<th>@val[0, c]</th>}}</tr></thead>@{ for(int r=1;r<Rows;r++){<tr>@{for (int c = 0; c < Cols; c++){if (c > 0){<td>@val[r, c]</td> }else{<th>@val[r, c]</th> }}}</tr>}}
</table>

能看出区别吗

&amp;amp;amp;amp;lt;td&amp;amp;amp;amp;gt;&amp;amp;amp;amp;lt;th&amp;amp;amp;amp;gt;标签的细微区别

HTML 表格标签总结

<table>:表示是一个表

<caption>:为表写一个标题

<tr>:表内的一行

<td>:单元格元素,文本通常是普通的左对齐文本。

<thead>:表格的表头部分,此外还有<tbody> 和 <tfoot>

<th>:表头元素,文本通常呈现为粗体并且居中。

table表格for循环绑定数据_.NET MVC 页面表格绘制相关推荐

  1. Vue---v-bind数据绑定、事件绑定、v-for循环绑定数据、v-model数据绑定、过滤器filters、v-show、v-if及练习(demo:切换小球颜色、获取数据进行展示、显示和隐藏)

    一.如何创建一个Vue实例*******************************************************{{}} 在vue中是一个展示数据的方式一个页面中可以有多个vu ...

  2. ssis 循环导入数据_使用集成服务(SSIS)包从Amazon S3 SSIS存储桶导入数据

    ssis 循环导入数据 This article explores data import in SQL Server from a CSV file stored in the Amazon S3 ...

  3. layui表格更改一列数据_【WEB前端开辟】layui表格数据变动的一种处理方式

    表格数据更改,平常包括几个内容:新增.修正.删除.挪动,开辟中常常会面对的一个题目就是更改以后怎样将数据同步到节点上,一向以来个人的提议照样应用表格重载,不管是url情势的照样data情势的实际都是须 ...

  4. java生成html表格数据_使用Java将表格数据导出成Excel格式

    前言:本文使用后台处理的办法导出前端表格中显示的数据. 引入依赖 org.apache.poi poi 3.17 书写PoiUtils public classPoiUtils {public sta ...

  5. 怎样用excel剔除异常数据_(如何剔除excel表格中重复的数据)excel表格怎么剔除异常数据...

    请问 Excel 如何剔除与平均数偏差较大的数字再求平均数?谢谢. 把问题作为内容(邮件主定要包含"excel",本人以此据辨别非垃圾邮件,以免误删).excel样件(请特别注意: ...

  6. 怎样在表格中选出同一类_怎样将一个excel表格里头的多个同一个名称下面的多个数据筛选出来...

    把这些掌握就差不多了 一.建立分类下拉列表填充项 我们常常要将企业的名称输入到表格中,为了保持名称的一致性,利用"数据有效性"功能建了一个分类下拉列表填充项. 1.在Sheet2中 ...

  7. antd动态隐藏表格中的一列_有很多excel表格,如何快速合并到一张表格里?

    excel的多表格合并 比如说你有20几家门店的数据,每个门店一个表格,难道要重复复制吗?如果有100家门店怎么办? 我们的数据表往往是从不同人员,不同部门不同门店或者子公司收集到的统一格式数据.这些 ...

  8. 怎样在表格中选出同一类_如何在excel表格中同一个框选择下一行 - 卡饭网

    在excel表格中怎样设置选择下拉列表? 在excel表格中怎样设置选择下拉列表? 在excel表格制作中,经常会遇到固定选项输入,例如性别( 男  女),婚否(是, 否),在制作考勤表的时候也可以利 ...

  9. mysql数据库导入到excel表格数据_[转载]将EXCEL表格中的数据导入mysql数据库表中(两种方法)...

    今天项目上遇到需要将excel中的数据导入到数据库的classify表中,于是乎拼命上网查阅方法,发现以下两种方法比较可行: 在此之前先说说按照网上的说法我没有试验成功的方法,将excel文件xls保 ...

最新文章

  1. 删库跑路大神「后悔」了?我只不过犯了大家都会犯的编程错误!
  2. db2字符串不能累加的吗_二建可以考两种专业吗?建筑和公路能同时考吗?
  3. Sencha Touch 开发入门
  4. 【计算机视觉】究竟谁能解决可解释性 AI?
  5. java.util.concurrent.Future基础
  6. LeetCode 320. 列举单词的全部缩写(回溯/位运算)
  7. Windows 7硬盘安装方法大全
  8. python3多进程写时拷贝_python多进程实现复制文件
  9. python爬虫程序的流程图_Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)...
  10. 进程间通信-Queue(python版)
  11. 用命令导入导出MS SQL数据
  12. pythondd_一些PYTHON :D:D:D
  13. IDC:大数据——数字化转型时代的大商机
  14. VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性
  15. 黑苹果 efi如何替换_小白第一次安装黑苹果,然后卡代码,别着急,教你一个通用步骤,一个一个排查,大部分是可以解决的,毕竟安装不是最难的一个步骤...
  16. 决策支持系统复习资料
  17. 涉密计算机检查情况 月检查表,关于2017年下半年保密检查的通知
  18. Jetson Nano 系列之:25FPS性能优化之路
  19. Flink反压与背压
  20. Apache Kafka(七)- Kafka ElasticSearch Comsumer

热门文章

  1. 面试必问:用 Java 写一个内存泄漏程序
  2. 【JEECG技术博文】Jeecg高级查询器
  3. UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)
  4. 数据结构基础(14) --链式队列的设计与实现
  5. Net Core 2.1Filter里面获取Controller、Action,请求方法,请求头部,请求参数
  6. hive入ES5.6.8
  7. Linux运维-day3
  8. 找单词(母函数问题)
  9. Oracle goldengate通用配置
  10. CMS 站点可能发生稳定性和性能问题