MVC后台传dt数据
//MVC后台传dt数据
public JsonResult TeacherVoteInfo([FromBody]Teacher_VoteModel model)
{
string tname = model.Tname;
string sqlall = @"SELECT top 40 Tname,sh.SchoolName,Vote_Count,ROW_NUMBER() over (order by Vote_Count desc) as number FROM dbo.Teacher t INNER JOIN dbo.School sh ON sh.Id=t.SchoolId ";
DataTable dtall = DbHelper.GetQuery(sqlall);
string sql = @"SELECT top 40 Tname,sh.SchoolName,Vote_Count FROM dbo.Teacher t INNER JOIN dbo.School sh ON sh.Id=t.SchoolId ";
if (!string.IsNullOrEmpty(tname))
{
sql += " and (t.Tname like '%" + tname + "%' or sh.SchoolName like '%" + tname + "%')";
}
sql += " order by Vote_Count desc";
DataTable dt = DbHelper.GetQuery(sql);
#region 让datatable转化为json格式
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();//
javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值
ArrayList arrayList = new ArrayList();
dt.Columns.Add("number", typeof(string));
Hashtable hd = new Hashtable();
for (int i = 0; i < dtall.Rows.Count; i++)
{
string key = dtall.Rows[i]["Tname"].ToString() + dtall.Rows[i]["SchoolName"].ToString();
hd.Add(key, dtall.Rows[i]["number"]);
}
for (int k = 0; k < dt.Rows.Count; k++)
{
foreach (System.Collections.DictionaryEntry de in hd)
{
if (de.Key.ToString() == dt.Rows[k]["Tname"].ToString() + dt.Rows[k]["SchoolName"].ToString())
{
//DataRow dr = dt.NewRow();
//dr["number"] = de.Value;
//dt.Rows.Add(dr);
dt.Rows[k]["number"] = de.Value;
break;//退出foreach遍历
}
}
}
foreach (DataRow dataRow in dt.Rows)
{
Dictionary<string, object> dictionary = new Dictionary<string, object>(); //实例化一个参数集合
foreach (DataColumn dataColumn in dt.Columns)
{
dictionary.Add(dataColumn.ColumnName, dataRow[dataColumn.ColumnName].ToString());
}
arrayList.Add(dictionary); //ArrayList集合中添加键值
}
string html = javaScriptSerializer.Serialize(arrayList);
#endregion
JsonResult json = Json(html, JsonRequestBehavior.AllowGet);
return json;
}
//前台传值到后台
var formParam = $("#registlog").serialize();//序列化表格内容为字符串
$.ajax({
type: "post",
url: "/Teacher/TeacherVoteSecond",
data: formParam,
datatype: "json",
success: function (response) {
if (response.Data.Result == "success") {
alert(response.Data.Message);
window.location.href = "/Teacher/TeacherPrizes";
} else {
alert(response.Data.Message);
}
}
});
////////////////////////
public ActionResult TeacherVoteSecond([FromBody]TeacherVoteSecond request) //[FromBody]TeacherVoteSecond 必须是传过来的类的名称大小吻合
{
}
MVC后台传dt数据的更多相关文章
- mvc后台传到前台的值带html标签css(解决方法)
mvc后台传到前台的值带html标签css MVC中要用:@Html.Raw(后台数据库取的值); 或者MvcHtmlString.create();
- json:java中前台向后台传对象数据
前台传入的是一个json类型的数据,如何在后台解析成想要的数据类型? 例如: 后台获取了前台一个string类型的数据@RequestParam(value = "forceUpgradeT ...
- C# mvc后台传过来的list 怎么在js使用
var arr= JSON.parse('@Html.Raw(new System.Web.Script.Serialization.JavaScriptSerializer().Serialize( ...
- 解决ajax的parsererror错误的终极办法(后台传给前台的数据json问题)
解决ajax的parsererror错误的终极办法(后台传给前台的数据json问题) 出现这个问题的原因是因为后台传给前台的数据出现了问题,ajax对于json的格式特别的严格 下面是会出现这个问题的 ...
- html表单通过关联数组向php后台传多条数据并遍历输出
通过表单向php后台传多条数据,以关联数组方式呈现,废话不多说,代码附上: html表单代码,方式我设置为get: <form action="php/cart.php" m ...
- Echart实现多个y轴,坐标轴的个数及名称由后台传过来的json数据决定。
yAxis: function(){ var yAxis=[]; for(var i=0;i<legend1.length;i++){ var item={ name:legend1[i], t ...
- 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期
腾讯云图片鉴黄集成到C# 官方文档:https://cloud.tencent.com/document/product/641/12422 请求官方API及签名的生成代码如下: public c ...
- 修改后台传过来的json数据中对象的属性
前言 今天在实习中遇到的一个小问题,后端传过来的一个json数据结构,但是对象中的属性名跟我需要的不一样(因为我是渲染echarts中的数据,属性名要一样) 这是后台传过来的数据: 需求是我需要把属性 ...
- ASP.NET MVC上传文件----uploadify的使用
课程设计需要实现上传文件模块,本来ASP.NET是有内置的控件,但是ASP.NET MVC没有,所以就有两种方法:自定义和采用第三方插件.由于时间的关系,故采用第三方插件:uploadify. upl ...
随机推荐
- Some Simple Models of Neurons
Linear neuron: \[y=b+\sum\limits_i{x_i w_i}\] Binary threshold neuron: \[z = \sum\limits_i{x_i w_i}\ ...
- HTML之表格制作
如何制作一个表格? 如何制作一个表格呢? 观察如下代码: <!DOCTYPE html> <html lang="en"> <head> &l ...
- Install latest R for ubuntu
### delete old version rm -rf /usr/local/lib/R /usr/lib/R ~/**/R sudo apt-get autoremove rstudio sud ...
- linux安装ftp组件
1 安装vsftpd组件 linux系统安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件. [root@bogon ~]# yum -y install v ...
- 【原】flux学习笔记
最近React(web/native)依旧如火如荼,相信大家都跃跃欲试,入职新公司,现在的团队也开始在React领域有所尝试. 2016年应该是React 逐渐走向成熟的一年.之前在原来公司搞不懂的问 ...
- 在Nginx中部署基于IP的虚拟主机
一.虚拟主机概念 虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点.应用组件等,提供必要的站点功能.数据存放和传输功能.所谓虚拟主机,也叫"网站空间", 就是把一台运行在 ...
- 基于centOS6.7搭建LAMP(httpd-2.4.18+mysql-5.5.47+php-5.6.16)环境
首先确保系统可以联网.设置IP地址以及虚拟机安装linux在此略过.本文采用centos6.7 64位minimal版.php5.6.16.httpd-2.4.18.mysql-5.5.47版搭建la ...
- Java自定义异常类
用户可以根据自己的需要定义自己的异常类,定义异常类只需要继承Exception类即可 //================================================= // Fi ...
- HTML学习笔记——块级标签、行级标签、图片标签
1>块级标签.行级标签 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- ES6标准
1. ES6标准感觉越来越向传统语言靠拢了,以后写到ES6的标准都记录下: ,,]; // =>操作符 array.forEach(v => console.log(v)); 是不是简化了 ...