后端
public ActionResult AddInfo(Array arra)
{
string z = ((string[])arra)[0];
List<Root> rbList = JsonConvert.DeserializeObject<List<Root>>(z);//反序列化
for (int i = 0; i < rbList.Count; i++)
{
string id = rbList[i].ScoreID;
var bk = db.ScoreInfo.Find(id);
bk.UsualScore = rbList[i].UsualScore;
bk.MiddleScore = rbList[i].MiddleScore;
bk.FinalScore = rbList[i].FinalScore;
bk.AbsentTime = rbList[i].AbsentTime;
bk.GeneralScore = (Convert.ToDouble(bk.UsualScore) * 0.3 + Convert.ToDouble(bk.MiddleScore) * 0.3 + Convert.ToDouble(bk.FinalScore) * 0.4).ToString();
db.SaveChanges();
}
var list = (from a in db.ScoreInfo
from b in db.UserInfo
from c in db.CourseInfo
from d in db.ClassInfo
where a.UserID == b.UserID && a.CourseID == c.CourseID && b.ClassesID == d.ClassesID
select new ScoreDM
{
ScoreID = a.ScoreID,
UserName = b.UserName,
IDNum = b.IDNum,
UsualScore = a.UsualScore,
MiddleScore = a.MiddleScore,
FinalScore = a.FinalScore,
AbsentTime = a.AbsentTime,
GeneralScore = a.GeneralScore,
ClassesName = d.ClassesName,
CourseName = c.CourseName
}).ToList();
var p = list.OrderBy(x => x.ScoreID).Skip(0).Take(3).ToList();
return Json(p);
}
//反序列化列表
public class Root
{
public string ScoreID { get; set; }
public string UsualScore { get; set; }
public string MiddleScore { get; set; }
public string FinalScore { get; set; }
public string AbsentTime { get; set; }
}
前端
add: function () {
var obj = document.getElementsByName("ids");
var oba = document.getElementsByName("UsualScore"); var obb = document.getElementsByName("MiddleScore");
var obc = document.getElementsByName("FinalScore"); var obd = document.getElementsByName("AbsentTime");
for (var i = 0; i < obj.length; i++) {
var score = { ScoreID: obj[i].value, UsualScore: oba[i].value, MiddleScore: obb[i].value, FinalScore: obc[i].value, AbsentTime: obd[i].value };
ids.push(score);
}
$.post('@Url.Action("AddInfo")', { arra: JSON.stringify(ids) }, function (data) {
viewModel.people(data); IFRead();
});
}