MVC的增删改查

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

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

1.查

 1 <table style="width:100%;background-color:#0ff;text-align:center">
 2       <tr>
 3           <td>账号</td>
 4           <td>密码</td>
 5           <td>昵称</td>
 6           <td>性别</td>
 7           <td>生日</td>
 8           <td>民族</td>
 9           <td>操作</td>
10       </tr>
11       <%
12           List<User> list = new UserData().Select();
13           foreach(User U in list){
14            %>
15        <tr style="background-color:#cefef8">
16           <td><%=U.UserName %></td>
17           <td><%=U.PassWord %></td>
18           <td><%=U.NickName%></td>
19           <td><%=U.Sexstr %></td>
20           <td><%=U.birStr %></td>
21           <td><%=U.Nation1.NationName %></td>
22            <td> <a href="Home/Update/<%=U.UserName %>">修改</a>
23                <a class="del" href="Home/Delete?haha=<%=U.UserName %>">删除</a></td>
24       </tr>
25       <% }%>
26   </table>

2.删

在C层添加动作

1         public void Delete(string uname)
2         {
3             User u = con.User.Where(r => r.UserName == uname).FirstOrDefault();
4             if (u != null)
5             {
6                 con.User.DeleteOnSubmit(u);
7                 con.SubmitChanges();
8             }
9         }

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>
View Code
 1  public ActionResult Insert()
 2         {
 3             return View();
 4         }
 5 
 6         public ActionResult Insert1(string username, string password, string nickname, string sex, string birthday, string nation)
 7         {
 8             Users u = new Users();
 9             u.UserName = username;
10             u.PassWord = password;
11             u.NickName = nickname;
12             u.Sex = Convert.ToBoolean(sex);
13             u.Birthday = Convert.ToDateTime(birthday);
14             u.Nation = nation;
15 
16             new UsersData().Insert(u);
17 
18             return RedirectToAction("Index", "Home");
19         }//接收form表单提交的数据

4.修改

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

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

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

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

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

 1   public ActionResult Update(string id)
 2         {
 3             User u = new UserData().Select(id);
 4 
 5             ViewBag.heihei1 = u;
 6             return View();
 7         }
 8         public ActionResult Update1(User u)
 9         {
10             new UserData().Update(u);
11 
12             return RedirectToAction("Index");
13         }

 

posted on 2016-12-05 09:10  fei!  阅读(4776)  评论(0编辑  收藏  举报