ASP.NET MVC 用存储过程批量添加修改数据操作 本文主要介绍了使用 ASP.NET MVC 框架和 Entity Framework 库来批量添加和修改数据的操作。我们知道,在 ASP.NET MVC 中,可以使用 Entity Framework 库来进行数据库交互,但是对于复杂的表关系关联查询或者修改操作, Entity Framework 库可能不太适合。此时,使用存储过程可以更好地解决这些问题。 在本文中,我们将讨论如何使用存储过程来批量添加和修改数据。我们的需求是批量添加修改产品类别的投放任务数,每月更新一次,月初归 0,添加后会显示在表单中。要实现这个需求,我们需要使用存储过程来批量添加和修改数据。 我们需要在前端使用表单动态读取类别动态加载到页面,如果已经有添加当月任务数,就读取出来显示到表单上,可以进行修改,否则就是全新添加当月任务数。当提交表单时,我们需要将类别编号 post 到后台,可以使用隐藏域来实现。 在后台,我们需要使用存储过程来批量添加和修改数据。我们可以将数据存到 DataTable 里面,然后用 Entity Framework 执行存储过程,把 DataTable 传到数据库处理。在数据库中,我们可以使用自定义数据类型来处理 DataTable。 在控制器中,我们可以使用 MarketDataProvider 来读取类别数据,然后使用 MarketTaskProgressProvider 来获取当前月的任务数。我们可以使用 Join 方法来关联类别数据和任务数据,然后使用 Select 方法来创建一个新的视图模型。 在视图页面,我们可以使用 foreach 循环来遍历视图模型,然后使用隐藏表单来传递类别编号到后台。 代码方面,我们可以使用下面的代码来实现控制器: ```csharp public ActionResult MarketTaskAdd() { var markeType = new MarketDataProvider().GetBTIDData().Where(a=>a.ID!="0");//读取类别 var rel = new MarketTaskProgressProvider().GetMarketMonthTask(); if (rel.Count() > 0) { ViewBag.datas = rel.Join(markeType, a => a.MKBTID, b => int.Parse(b.ID), (a, b) => new { a.MKBTID, b.ID,b.Text,a.TaskNum }).Select(s=>new ViewsModel { ID= s.MKBTID.ToString() ,Text=s.Text,TaskNum=s.TaskNum.ToString()}); } else { var rel2 = markeType.Select(s => new ViewsModel{ ID = s.ID, Text = s.Text, TaskNum="" }).ToList();//直接返回表单 ViewBag.datas = rel2; } return View(); } ``` 在视图页面,我们可以使用下面的代码来遍历视图模型: ```html @foreach (var modelMarkets in ViewBag.datas) { <div class="row" style="margin-top:10px"> <div class="col-md-4 text-right"><span class="red">*</span> @modelMarkets.Text </div> <div class="col-md-8 text-left"> <input name="text|@modelMarkets.ID" class="form-control" style="width:50%" value="@modelMarkets.TaskNum" type="text" /> <input type="hidden" name="type|@modelMarkets.ID" value="type|@modelMarkets.ID" /><!--隐藏表单--> </div> </div> } ``` 本文介绍了使用 ASP.NET MVC 框架和 Entity Framework 库来批量添加和修改数据的操作,并且使用存储过程来批量添加和修改数据。
剩余10页未读,继续阅读
- 粉丝: 4588
- 资源: 1万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Python基础学习-12匿名函数lambda和map、filter
- MATLAB实现SSA-BP麻雀搜索算法优化BP神经网络多输入单输出回归预测(多指标,多图)(含完整的程序和代码详解)
- AMI aptio 5.x BIOS状态码(POST CODE)及开机Beep声含义表(Checkpoints & Beep Codes for Debugging R2.0)
- MATLAB实现POA-CNN-LSTM鹈鹕算法优化卷积长短期记忆神经网络多输入单输出回归预测(含完整的程序和代码详解)
- Matlab实现基于RF随机森林的电力负荷预测模型(含完整的程序和代码详解)
- Matlab实现基于GRNN广义回归神经网络的电力负荷预测模型(含完整的程序和代码详解)
- mmexport1732757977880.mp4
- MATLAB实现WOA-RBF鲸鱼优化算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图)(含完整的程序和代码详解)
- MATLAB实现K折交叉验证GRNN广义回归神经网络多输入单输出回归预测(含完整的程序和代码详解)
- MATLAB实现基于RF随机森林的时间序列预测-递归预测未来(多指标评价)(含完整的程序和代码详解)