MVC的增删改查

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

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

1.查

<table style="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");
        }
原文地址:https://www.cnblogs.com/1711643472qq/p/6179837.html