基本都要使用C控制器中的两个action来完成操作,一个用于从主界面跳转到新页面、同时将所需操作的数据传到新界面,另一个则对应新界面的按钮,用于完成操作、将数据传回主界面以及跳转回主界面。根据不同情况使用不同的传值方法。

在M模型层中定义所需的LinQ操作

1.查

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<%@ Import Namespace="Mvc_staff.Models" %>
<!DOCTYPE html> <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body> <table style="background-color:blue;width:100%;">
<tr style="color:white;text-align:center">
<td>用户名</td>
<td>密码</td>
<td>昵称</td>
<td>性别</td>
<td>生日</td>
<td>民族</td>
<td>操作</td>
</tr>
<% List<Users> ulist = new UsersData().SelectAll();
foreach (Users us in ulist)
{
%>
<tr style="background-color:white;text-align:center;">
<td><%=us.Username %></td>
<td><%=us.Password %></td>
<td><%=us.Nikename %></td>
<td><%=us.Sex.Value?"男":"女" %></td>
<td><%=us.Birthday.Value.ToString("yyyy年MM月dd日") %></td>
<td><%=us.Nation1.NationName %></td>
<td>
<a href="/Home/Update/<%=us.Ids %>">修改</a>
<a href="Home/Delete/<%=us.Ids %>">删除</a>
</td>
</tr>
<%} %>
</table>
<input type="button" value="添加" onclick="window.open('Home/InsertMain')" /> </body>
</html>

展示页

2.删

在C层添加动作

public ActionResult Delete(string id)
{
bool ok = new UsersData().delete(id); Session["deleteok"]=ok;
return RedirectToAction("Index");
}

删除动作

3.添加

View中提交元素,表单元素使用form表单提交,按钮的使用submit,点击submit的时候会提交所在form表单中的数据,在控制器C中获取元素,在模型层M的写法,在C中调用。

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

<%@ Import Namespace="Mvc_staff.Models" %>
<!DOCTYPE html> <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>InsertMain</title>
<script src="jquery-1.7.1.min.js"></script>
<script src="../../DatePicker/WdatePicker.js"></script>
<style type="text/css">
#bottom {
width: 300px;
height: 500px;
margin: auto;
border: 1px solid #;
} #title {
width: %;
font-size: 20px;
text-align: center;
margin-top: 20px;
} .itembot {
width: %;
height: 50px;
border: 1px solid #;
} .nav {
width: 200px;
height: 20px;
float: right;
} .item {
height: 20px;
font-size: 12px;
line-height: 20px;
float: right;
}
#sub {
width:%;
margin-top:10px;
font-size:14px;
color:#;
background-color:#0026ff;
}
</style>
</head>
<body>
<form action="InsertSub" method="post">
<div id="bottom">
<div id="title">添加数据</div>
<%-- 用户名 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="usersname" />
</div>
<span class="item">用户名:</span>
</div>
<%-- 密码 --%>
<div class="itembot">
<div class="nav">
<input type="password" name="password" />
</div>
<span class="item">密码:</span>
</div>
<%-- 确认密码 --%>
<div class="itembot">
<div class="nav">
<input type="password" />
</div>
<span class="item">确认密码:</span>
</div>
<%-- 昵称 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="nickname" />
</div>
<span class="item">昵称:</span>
</div>
<%-- 性别 --%>
<div class="itembot">
<div class="nav">
<input type="radio" checked="checked" name="sex" value="true" id="ra_sex1" />
<label for="ra_sex1">男</label>
<input type="radio" name="sex" value="false" id="ra_sex2" />
<label for="ra_sex2">女</label>
</div>
<span class="item">性别:</span>
</div>
<%-- 生日 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="birthday" id="txt_Time"/>
</div>
<span class="item">生日:</span>
</div>
<%-- 民族 --%>
<div class="itembot">
<div class="nav">
<select name="nation">
<%
List<Nation> nlist = new UsersData().NSelectAll();
foreach (Nation na in nlist)
{
%>
<option value="<%=na.NationCode %>"><%=na.NationName %></option>
<%} %>
</select>
</div>
<span class="item">民族:</span>
</div>
<input type="submit" value="保存" id="sub"/>
</div>
</form>
</body>
</html>
<script type="text/javascript">
$("#txt_Time").focus = function () {
alert('');
WdatePicker({ readOnly: true, maxDate: '%y-%M-%d' });
}
</script>

添加视图

public ActionResult InsertMain()
{
return View();
}
public ActionResult InsertSub(string usersname, string password, string nickname, string sex, string birthday, string nation)
{
Users us = new Users();
us.Username = usersname;
us.Password = password;
us.Nikename = nickname;
us.Sex = Convert.ToBoolean(sex);
us.Birthday = Convert.ToDateTime(birthday);
us.Nation=nation; bool isok = new UsersData().insert(us);
Session["Insertok"] = isok; return RedirectToAction("Index");
}

添加动作

4.修改

同添加,需要两个action支持,一个主页面打开修改页面,一个修改按钮确定修改返回主页面

从控制器传值到View使用ViewBag.包名=数据源。

View中<%Users u=ViewBag.包名 as User; %>

系统自生成的Users u 有可能缺少部分内容

form表单中的action路径 action="/home/update"

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<%@ Import Namespace="Mvc_staff.Models" %>
<!DOCTYPE html> <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>Update</title>
<script src="jquery-1.7.1.min.js"></script>
<style type="text/css">
#bottom {
width: 300px;
height: 500px;
margin: auto;
border: 1px solid #;
} #title {
width: %;
font-size: 20px;
text-align: center;
margin-top: 20px;
} .itembot {
width: %;
height: 50px;
border: 1px solid #;
} .nav {
width: 200px;
height: 20px;
float: right;
} .item {
height: 20px;
font-size: 12px;
line-height: 20px;
float: right;
}
#sub {
width:%;
margin-top:10px;
font-size:14px;
color:#;
background-color:#0026ff;
}
</style> </head>
<body>
<% Users users = ViewBag.getusers ; %>
<%if (users!=null)
{ %>
<script type="text/javascript">
alert('');
</script>
<%} %>
<form action="/Home/UpdateSub" method="post">
<div id="bottom">
<div id="title">修改数据</div>
<input type="hidden" name="ids" value="<%=users.Ids %>"/> <%-- 用户名 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="usersname" value="<%=users.Username %>"/>
</div>
<span class="item">用户名:</span>
</div>
<%-- 密码 --%>
<div class="itembot">
<div class="nav">
<input type="password" name="password" value="<%=users.Password %>"/>
</div>
<span class="item">密码:</span>
</div>
<%-- 确认密码 --%>
<div class="itembot">
<div class="nav">
<input type="password" value="<%=users.Password %>"/>
</div>
<span class="item">确认密码:</span>
</div>
<%-- 昵称 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="nickname" value="<%=users.Nikename %>"/>
</div>
<span class="item">昵称:</span>
</div>
<%-- 性别 --%>
<div class="itembot">
<div class="nav">
<%if(users.Sex==true)
{ %>
<input type="radio"checked="checked" name="sex" value="true" id="ra-sex1" />
<label for="ra-sex1">男</label>
<input type="radio" name="sex" value="false" id="ra-sex2" />
<label for="ra-sex2">女</label>
<%}
else{ %>
<input type="radio" name="sex" value="true" id="Radio1" />
<label for="ra-sex1">男</label>
<input type="radio" checked="checked" name="sex" value="false" id="Radio2" />
<label for="ra-sex2">女</label>
<%} %> </div>
<span class="item">性别:</span>
</div>
<%-- 生日 --%>
<div class="itembot">
<div class="nav">
<input type="text" name="birthday" id="txt_Time" value="<%=users.Birthday %>"/>
</div>
<span class="item">生日:</span>
</div>
<%-- 民族 --%>
<div class="itembot">
<div class="nav">
<select name="nation">
<%
List<Nation> nlist = new UsersData().NSelectAll();
foreach (Nation na in nlist)
{
if(na.NationCode==users.Nation)
{
%>
<option selected="selected" value="<%=na.NationCode %>"><%=na.NationName %></option>
<%}
else{%>
<option value="<%=na.NationCode %>"><%=na.NationName %></option>
<%}}
%>
</select>
</div>
<span class="item">民族:</span>
</div>
<input type="submit" value="保存" id="sub"/>
</div>
</form>
</body>
</html>

修改视图

public ActionResult Update(string id)
{
Users us = new UsersData().select(id);
ViewBag.getusers = us;
return View();
}
public ActionResult UpdateSub(string usersname, string password, string nickname, string sex, string birthday, string nation,string ids)
{
bool isok = new UsersData().Update(usersname, password, nickname, sex, birthday, nation, ids);
Session["updateok"] = isok; return RedirectToAction("Index","Home");
}

修该动作

完整数据类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace Mvc_staff.Models
{
public class UsersData
{
/// <summary>
/// 查询全部方法
/// </summary>
/// <returns></returns>
UsersDataContext con = new UsersDataContext();
public List<Users> SelectAll()
{
return con.Users.ToList();
}
public List<Nation> NSelectAll()
{
return con.Nation.ToList();
}
public bool insert(Users us)
{
bool ok = false;
try
{
con.Users.InsertOnSubmit(us);
con.SubmitChanges();
ok = true;
}
catch { };
return ok;
}
public bool delete(string ids)
{
bool ok = false;
Users us=con.Users.Where(r => r.Ids.ToString() == ids).FirstOrDefault();
if (us != null)
{
con.Users.DeleteOnSubmit(us);
con.SubmitChanges();
ok = true;
}
return ok;
}
public Users select(string ids)
{
return con.Users.Where(r=>r.Ids.ToString()==ids).FirstOrDefault();
}
public bool Update(string usersname, string password, string nickname, string sex, string birthday, string nation, string ids)
{
bool ok = false;
try
{
Users ulist = con.Users.Where(r => r.Ids.ToString() == ids).FirstOrDefault();
if (ulist != null)
{
ulist.Ids =Convert.ToInt32(ids);
ulist.Username = usersname;
ulist.Password = password;
ulist.Nikename = nickname;
ulist.Sex =Convert.ToBoolean(sex) ;
ulist.Birthday = Convert.ToDateTime(birthday);
ulist.Nation = nation; con.SubmitChanges();
ok = true;
}
}
catch { }
return ok;
}
}
}

方法

MVC人员管理系统的更多相关文章

  1. WebForm 小项目【人员管理系统】分析

    简单的人员管理系统 展示页面 添加人员 --判断添加人员的各种条件限制 -- 各种提示 修改人员信息 -- 人员原来信息绑定 --密码不显示,密码不改时用原来密码 人员删除 using System; ...

  2. jsp学习之基于mvc学生管理系统的编写

    mvc开发模式:分别是 model层 view层 Control层 在学生管理系统中,model层有学生实体类,数据访问的dao层,view层主要是用于显示信息的界面,Control层主要是servl ...

  3. 【转载】Java程序模拟公安局人员管理系统

    编程题:公安人员的管理系统1) 学生类:a) 属性:i. 身份号—默认没有,需要手动进行输入ii. 姓名iii. 性别iv. 年龄v. 密码vi. 居住地址vii. 注册日期viii. 人员的信誉程度 ...

  4. MVC学生管理系统-阶段I(显示学生列表)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 目录 MVC设计模式 前期准备: NO01:新建一个index.js ...

  5. MVC权限管理系统dwpro项目权限按钮无故自动消失问题

    关于那个权限按钮丢失的问题修改方法如下: 把源文件中的XmlConfig文件夹里的Config.xml文件剪切到根目录下,并修改文件名为:app.config(关键是后缀不是xml了是config) ...

  6. MVC权限管理系统dwpro项目分配按钮没有显示的问题

    问题如下: 修改如下: 或者(原因为这个两个地方名要一致,大小写也要注意): 效果图:

  7. 一步一步Asp.Net MVC系列_权限管理总结(附MVC权限管理系统源码)

    在上一节中我们总结了关于权限控制的方式,我们这一节讲解关于权限控制中角色权限的授予处理等等并做本系列的总结. 首先,我们来谈谈权限控制中角色权限的控制,上一节只是针对权限拦截中比较粗的控制,如果我们需 ...

  8. MVC学生管理系统-阶段V(模糊查询)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 此处省略一段话.去上一篇查看 NO01:修改list.jsp < ...

  9. MVC学生管理系统-阶段IV(修改学生信息)

    项目源码 :https://download.csdn.net/download/weixin_44718300/11091042 前期准备,主体框架, 学生列表显示  请看阶段一文章 添加学生信息 ...

随机推荐

  1. [删括号][判断可行性的dp]

    链接:https://ac.nowcoder.com/acm/problem/21303来源:牛客网题目描述 给你一个合法的括号序列s1,每次你可以删除一个"()" 你可以删除0个 ...

  2. meven仓库设置局域网私服

    找到设置文件 在设置文件中配置私服地址

  3. IDT表连接

    一.table A为基础表,左外连接table B,若要限制B的条件,需加(+),否则会对结果集以B表的条件进行过滤. DWD_REASON_CODE.CODE(+)=DWR_EDA_CL_TST_D ...

  4. XML注入(XXE)

    XML所有元素都必须要有一个结束标志 大小写敏感 所有元素嵌套必须正确 所有的XML文档都必须要有一个根标志 XML包括XML声明,DTD文档类型定义(可选),文档元素 DTD即文档类型定义,用来为X ...

  5. cookie 就是一些字符串信息

    什么是 Cookie “cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用JavaScript 来创建和取回cookie 的 ...

  6. rs232接口定义

  7. Dubbo和Spring Cloud

    1.Dubbo和Spring Cloud区别 1).通信方式不同 Dubbo使用RPC通信,Spring Cloud使用Http RestFul方式 2) 组成部分不同 组件 Dubbo Spring ...

  8. Dubbo-Admin 2.6.0使用

    一.下载源码 下载2.6.0的源码 https://github.com/apache/incubator-dubbo/releases/tag/dubbo-2.6.0 二.使用Eclipse打开du ...

  9. LeetCode——162. Find Peak Element

    一.题目链接: https://leetcode.com/problems/find-peak-element/ 二.题目大意: 给定一个长度为N的一维数组,数组是无序的,要求找到数组中的极大值(或局 ...

  10. global的使用

    对于一个全局变量,你的函数里如果只使用到了它的值,而没有对其赋值(指a = XXX这种写法)的话,就不需要声明global. 相反,如果你对其赋了值的话,那么你就需要声明global.声明global ...