zoukankan      html  css  js  c++  java
  • MVC人员管理系统

    基本都要使用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;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 {
                 300px;
                height: 500px;
                margin: 0 auto;
                border: 1px solid #808080;
            }
    
            #title {
                 100%;
                font-size: 20px;
                text-align: center;
                margin-top: 20px;
            }
    
            .itembot {
                 100%;
                height: 50px;
                border: 1px solid #808080;
            }
    
            .nav {
                 200px;
                height: 20px;
                float: right;
            }
    
            .item {
                height: 20px;
                font-size: 12px;
                line-height: 20px;
                float: right;
            }
            #sub {
                100%;
                margin-top:10px;
                font-size:14px;
                color:#808080;
                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('1111');
            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 {
                 300px;
                height: 500px;
                margin: 0 auto;
                border: 1px solid #808080;
            }
    
            #title {
                 100%;
                font-size: 20px;
                text-align: center;
                margin-top: 20px;
            }
    
            .itembot {
                 100%;
                height: 50px;
                border: 1px solid #808080;
            }
    
            .nav {
                 200px;
                height: 20px;
                float: right;
            }
    
            .item {
                height: 20px;
                font-size: 12px;
                line-height: 20px;
                float: right;
            }
            #sub {
                100%;
                margin-top:10px;
                font-size:14px;
                color:#808080;
                background-color:#0026ff;
            }
        </style>
    
    </head>
    <body>
        <% Users users = ViewBag.getusers ; %>
        <%if (users!=null)
              { %>
            <script type="text/javascript">
                alert('123123');
            </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;
            }
        }
    }
    方法
  • 相关阅读:
    forms组件、cookie与session
    choices参数、MTV与MVC模型、Ajax、序列化组件、sweetalert搭建页面、自定义分页器
    Django 常用字段,数据库查询优化 only与defer
    django配置代码
    django 模板层、模型层
    Django 请求生命周期、路由层
    centos6.8安装httpd后无法访问
    初次认识dedecms和帝国cms内容管理系统
    遇到一个json解码失败的问题
    关于apache配置映射端口
  • 原文地址:https://www.cnblogs.com/hclyz/p/7088189.html
Copyright © 2011-2022 走看看