zoukankan      html  css  js  c++  java
  • ASP.NET MVC学习总结(二)

    前不久学习了asp.net的webform,然后才来学习MVC的,感觉思维有了很大的改变,再用webform的思想就有些力不从心了,所以还是的忘记webform的东西,从头再来理解MVC3.0吧,下面就是从简单的开始吧。

      在asp.net的webform中如果要写的话就会写很多的sql语句的,比如:INSERT INTO TABLE(),SELECT。。。。。总之,就是要写大量的sql语句,特别是在复杂的分页sql语句,要是写不好的话还会出现一些意向不到错误,下面来看看MVC3.0中是怎么样的进行增删查改的吧:

    (1)、数据的添加,代码如下:

     1   public ActionResult Create(User dpt)
     2         {
     3             var data = db.Departments.OrderByDescending(p => p.Name);
     4             ViewBag.DptName = data;
     5             try
     6             {
     7                 db.Entry(dpt).State = System.Data.EntityState.Added;
     8                 db.SaveChanges();
     9             }
    10             catch (Exception ex)
    11             {
    12                 ViewBag.Ex = ex.Message;
    13             }
    14 
    15             return View();
    16         }

    看一下代码中着色的代码吧,够简单的吧,它就是这样的简单的,你看了之后还想写sql语句吗?还在为了从前台获取数据写大量的“冗余代码”吗?试试吧!

    (2)、下面再来看看删除的代码吧,不用写诸如DELETE。。之类的代码了吧,代码如下:

    1   public ActionResult Delete(string LoginName)
    2         {
    3             User users = new User();
    4             users.LoginName = LoginName;
    5             db.Entry(users).State = System.Data.EntityState.Deleted;
    6             db.SaveChanges();
    7             return RedirectToAction("Index", new { id = Request.QueryString["page"] });
    8         }

    (3)、再给出数据列表的代码吧,如下:

     1  public ActionResult Index(int? id)
     2         {
     3             var list = from p in db.users.Include(p => p.Department) orderby p.ID descending select p;
     4             IEnumerable<User> data = list.ToPagedList(id ?? 1, 5);
     5             if (Request.IsAjaxRequest())
     6             {
     7                 return PartialView("_Index", data);
     8             }
     9             else
    10             {
    11                 return View("Index", data);
    12             }
    13         }

    怎么样呢?在列表页的数据,你还在为了写分页sql那样复杂的代码愁吗?不要犹豫了,你来试试吧,不过ToPagedList(id ?? 1, 5);是已经实现的方法的哦,在实际的MVC3.0中没有自带的,下次给出不用已经实现的代码的方式,正在不断的总结中。。。。。。。。。

        

  • 相关阅读:
    fenby C语言 P32
    fenby C语言 P31 使用数组的指针
    fenby C语言 P30
    fenby C语言 P29
    fenby C语言 P28
    fenby C语言 P27使用指针
    fenby C语言 P25
    fenby C语言 P26
    fenby C语言P24
    Python学习之路:通过socket实现处理多个连接
  • 原文地址:https://www.cnblogs.com/gyouxu/p/2720649.html
Copyright © 2011-2022 走看看