MVC的增删改查
基本都要使用C控制器中的两个action来完成操作,一个用于从主界面跳转到新页面、同时将所需操作的数据传到新界面,另一个则对应新界面的按钮,用于完成操作、将数据传回主界面以及跳转回主界面。根据不同情况使用不同的传值方法。
在M模型层中定义所需的LinQ操作
1.查
<table style="width:100%;background-color:#0ff;text-align:center">
<tr>
<td>账号</td>
<td>密码</td>
<td>昵称</td>
<td>性别</td>
<td>生日</td>
<td>民族</td>
<td>操作</td>
</tr>
<%
List<User> list = new UserData().Select();
foreach(User U in list){
%>
<tr style="background-color:#cefef8">
<td><%=U.UserName %></td>
<td><%=U.PassWord %></td>
<td><%=U.NickName%></td>
<td><%=U.Sexstr %></td>
<td><%=U.birStr %></td>
<td><%=U.Nation1.NationName %></td>
<td> <a href="Home/Update/<%=U.UserName %>">修改</a>
<a class="del" href="Home/Delete?haha=<%=U.UserName %>">删除</a></td>
</tr>
<% }%>
</table>
2.删
在C层添加动作
public void Delete(string uname)
{
User u = con.User.Where(r => r.UserName == uname).FirstOrDefault();
if (u != null)
{
con.User.DeleteOnSubmit(u);
con.SubmitChanges();
}
}
3.添加
View中提交元素,表单元素使用form表单提交,按钮的使用submit,点击submit的时候会提交所在form表单中的数据,在控制器C中获取元素,在模型层M的写法,在C中调用。
<form name="form1" action="Insert1" method="post"> <%string a = ""; %>
<h1>添加用户</h1>
用户名:<input type="text" name="username" /><br />
密码:<input type="text" name="password" /><br />
昵称:<input type="text" name="nickname" /><br />
性别:<input type="text" name="sex" /><br />
生日:<input type="text" name="birthday" /><br />
民族:<input type="text" name="nation" /><br />
<input type="submit" value="添加" />
</form>
public ActionResult Insert()
{
return View();
} public ActionResult Insert1(string username, string password, string nickname, string sex, string birthday, string nation)
{
Users u = new Users();
u.UserName = username;
u.PassWord = password;
u.NickName = nickname;
u.Sex = Convert.ToBoolean(sex);
u.Birthday = Convert.ToDateTime(birthday);
u.Nation = nation; new UsersData().Insert(u); return RedirectToAction("Index", "Home");
}//接收form表单提交的数据
4.修改
同添加,需要两个action支持,一个主页面打开修改页面,一个修改按钮确定修改返回主页面
从控制器传值到View使用ViewBag.包名=数据源。
View中<%Users u=ViewBag.包名 as User; %>
系统自生成的Users u 有可能缺少部分内容
form表单中的action路径 action="/home/update"
public ActionResult Update(string id)
{
User u = new UserData().Select(id); ViewBag.heihei1 = u;
return View();
}
public ActionResult Update1(User u)
{
new UserData().Update(u); return RedirectToAction("Index");
}
MVC的增删改查的更多相关文章
- 分享一个自己写的MVC+EF “增删改查” 无刷新分页程序
分享一个自己写的MVC+EF “增删改查” 无刷新分页程序 一.项目之前得添加几个组件artDialog.MVCPager.kindeditor-4.0.先上几个效果图. 1.首先建立一个数 ...
- 【ASP.NET MVC系列】浅谈jqGrid 在ASP.NET MVC中增删改查
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- MVC——数据库增删改查(aspx)
MVC: V(View) :视图→就是页面的模板 C(Control): 控制器→客户主要面对的就是控制器, M(Model):模板→在模板里面主要就是写关于数据库的各种增删改查的方法 它们之间的关系 ...
- ASP.NET Identity系列02,在ASP.NET MVC中增删改查用户
本篇体验在ASP.NET MVC中使用ASP.NET Identity增删改查用户. 源码在这里:https://github.com/darrenji/UseIdentityCRUDUserInMV ...
- MVC——数据库增删改查(Razor)——Html语法
一.显示界面 .Models(模板) private MyDBDataContext _context = new MyDBDataContext(); public List<Info> ...
- MVC——数据库增删改查(Razor)
一.显示信息 .Models(模板) private MyDBDataContext _context = new MyDBDataContext(); //定义一个变量取出所有数据 public L ...
- 简单MVC实现增删改查
反射工具类RelfectionUtils package Utils; import java.lang.reflect.Field; import java.lang.reflect.Invocat ...
- 【ASP.NET MVC】jqGrid 增删改查详解
1 概述 本篇文章主要是关于JqGrid的,主要功能包括使用JqGrid增删查改,导入导出,废话不多说,直接进入正题. 2 Demo相关 2.1 Demo展示 第一部分 第二部分 2.2 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查
系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...
随机推荐
- LInux 安装东西
本机 PHP 安装 ./configure --prefix=/usr/local/php5 --with-gd --enable-gd-native-ttf --enable-gd-jis-co ...
- 冒烟测试 smoking test
冒烟测试的概念: 版权声明:本文为博主原创文章,未经博主允许不得转载. 冒烟测试既是对软件基本的功能进行测试,测试的对象是每一个新编译的需要正式测试的软件版本,目的是确认软件基本的功能正常,保证软件系 ...
- Leetcode-83 Remove Duplicates from Sorted List
#83. Remove Duplicates from Sorted List Given a sorted linked list, delete all duplicates such that ...
- thinkPHP入门
什么是框架 框架就是一定结构的代码,框架提供一个开发web程序的基础架构以及常用的功能 代码,PHP框架的web程序开发拜倒了流水线上. php框架就是一定要按别人规定好的架构编写. php开发框架有 ...
- 使用Ado.net执行SP很慢,而用SSMS执行很快
今天遇到一个问题,有用户反应,在site上打开报表,一直loading,出不来结果. 遇到这种问题,我立刻simulate用户使用Filter Condition,问题repro,看来不是偶然事件,通 ...
- 【转】C#调用Windows图片和传真查看器打开图片
//建立新的系统进程 System.Diagnostics.Process process = new System.Diagnostics.Process(); //设置文件名,此处为图片的真实路径 ...
- 自制编程语言crowbar(v0.1)构建解析器时分配内存
crowbar中第一次申请内存是在生成解析器的时候: /* interface.c */CRB_Interpreter *CRB_create_interpreter(void) { MEM_Stor ...
- java的栈图形演示
import java.awt.*; import javax.swing.*; import java.awt.event.*; /* 指示发生了组件定义的动作的语义事件.当特定于组件的动作(比如被 ...
- Linux安装Node.js
安装环境:Ubuntu:x86_64 Node.js 官网:https://nodejs.org 下载Node.js: wget https://nodejs.org/dist/v4.4.3/node ...
- ARC内存管理机制详解
ARC在OC里面个人感觉又是一个高大上的牛词,在前面Objective-C中的内存管理部分提到了ARC内存管理机制,ARC是Automatic Reference Counting---自动引用计数. ...