开发工具与关键技术:VS、多条数据的保存
作者:陆桂超
撰写时间:2019年7月7日
在做项目开发的时候,有时会遇到材料明细表这些要同时保存多条数据的,这种保存与单条数据的保存有一点不同。因为涉及到多条数据,为了避免多次请求数据库,我们应该先把这几条数据封装好再传到控制器。下面我将用到C#编程语言,简述多条数据的保存方法。
1、现在要把下图table表格所示的两条数据保存到数据库。
2、实现思路:
(1)、声明一个存放对象的数组。
var info = [];
(2)、通过for循环获取table表格的内容,并把获取到的一条内容封装到对象里,最后把对象存进数组。
var Counts = $("#tabDetail").find(".Row").length;
for (var i = 0; i < Counts ; i++) {
var Amount = $("#Amount" + i + “”).val();//获取table表格内容
var UnitPrice = $("#UnitPrice" + i + “”).val();//获取table表格内
var Discount = $("#Discount" + i + “”).val();//获取table表格内容
person = new Object()//声明一个对象
//把获取到的内容存进对象
person = { Amount: Amount,
UnitPrice: UnitPrice, Discount: Discount, };
//把对象存进数组。
info.push(person);
}
(4)、把该数组传到控制器。
$.post(“rrb”,
{
info: info,
}
function(){
});
3、控制器接收并执行保存。因为视图传过来的是数组,所以要用List列表接收。
public ActionResult rrb(List<SYS_PurchaseIndentDetail> info){
//保存数据
mymodel.SYS_PurchaseIndentDetail.AddRange(info);
}