MVC如何实现增、删、改、查
更新:HHH   时间:2023-1-7


这篇文章主要为大家展示了“MVC如何实现增、删、改、查”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MVC如何实现增、删、改、查”这篇文章吧。

首先创建一个MVC2的一个应用程序,里面已经给我们创建了控制器文件夹Controller、模板Models、Views视图

1.我们在控制器里面创建步骤看面的图吧

在这里要改名,后面的Controller别改啦 这上微软的约定

把鼠标放到这个Index上右击,点击这个添加视图

把这个名字最好改与你的控制器名字一样,选择这个创建强类型视图,在视图数据类里面选择你要的数据库,把视图内容选择为List,因为是要展示内容嘛。

2.我们要把这个用户的信息在页面上全部展示出来

我们把这个Models里面的实体对象上下文给取到

3.把这个用户的信息给展示出来

public ActionResult Index()        {            //把数据给全部显示出来  当然这里还是要分页的哈            EFFristModelEntities ef = new EFFristModelEntities();//取到上下文            return View(ef.UserInfo);//这个方法有多个重载        }

下面就是我们要展示出来的用户信息

4.我们来把取到用户的一条数据进行展示吧,增删改查都这样创建视图就可以了

5.首先取出一条用户信息显示出来 删除  编辑  显示出所有的  在删除与编辑用户信息,都要先展示出来当前所点击的用户信息。是根据用户Id找到的

  1. public ActionResult Index() //这里是显示所有的用户信息

  2.        { 

  3.            //把数据给全部显示出来  当然这里还是要分页的哈 

  4.            EFFristModelEntities ef = new EFFristModelEntities();//取到上下文 

  5.            return View(ef.UserInfo);//这个方法有多个重载 

  6.        } 

  7.  

  8.        // 

  9.        // GET: /Student/Details/5 

  10.        /// <summary> 

  11.        /// 数据页面展示 是根据这个ID来展示某一条数据 

  12.        /// </summary> 

  13.        /// <param name="id"></param> 

  14.        /// <returns></returns> 

  15.        public ActionResult Details(int id) 

  16.        { 

  17.            //取到上下文 

  18.            EFFristModelEntities ef = new EFFristModelEntities(); 

  19.            //用这个上下文来取到这个用户的信息 用Where  

  20.            //Where<UserInfo>(uId => uId.ID == id):是一个集合 FirstOrDefault<UserInfo>():一条数据 

  21.            var userInfo= ef.UserInfo.Where<UserInfo>(u => u.ID == id).FirstOrDefault<UserInfo>(); 

  22.            ViewData.Model = userInfo;//用这个ViewData取到这个实体,再把取到的实体对象userInfo给ViewData  因为这个是一个强类型页面 直接用Model用取到  前台Inherits="System.Web.Mvc.ViewPage<IEnumerable<MvcApp.Models.UserInfo>>"  

  23.            return View(); 

  24.        } 

  25.  

  26.        // 

  27.        // GET: /Student/Create 

  28.        /// <summary> 

  29.        /// 添加用户信息 

  30.        /// </summary> 

  31.        /// <returns></returns> 

  32.        添加用户就是在注册里面,方法一样

  33.         

  34.        // 

  35.        // GET: /Student/Edit/5 

  36.        /// <summary> 

  37.        /// 编辑用户的信息根据id来编辑用户的信息 

  38.        /// </summary> 

  39.        /// <param name="id"></param> 

  40.        /// <returns></returns> 

  41.        public ActionResult Edit(int id) 

  42.        { 

  43.            //取到上下文 

  44.            EFFristModelEntities ef = new EFFristModelEntities(); 

  45.            var user = ef.UserInfo.Where<UserInfo>(u => u.ID == id).FirstOrDefault<UserInfo>(); 

  46.            ViewData.Model = user; 

  47.            return View(); 

  48.        } 

  49.  

  50.        // 

  51.        // POST: /Student/Edit/5 

  52.        /// <summary> 

  53.        /// 编辑用户的信息根据id来编辑用户的信息 

  54.        /// </summary> 

  55.        /// <param name="id"></param> 

  56.        /// <param name="collection"></param> 

  57.        /// <returns></returns> 

  58.        [HttpPost] 

  59.        public ActionResult Edit(int id, UserInfo user) 

  60.        { 

  61.            try 

  62.            { 

  63.                EFFristModelEntities ef = new EFFristModelEntities(); 

  64.                ef.UserInfo.Attach(user);//把这个用户给追加到这个上下文中来 

  65.                ef.ObjectStateManager.ChangeObjectState(user, System.Data.EntityState.Modified);//把这个用户的信息给状态改变了 

  66.                ef.SaveChanges(); 

  67.                return RedirectToAction("Index"); 

  68.            } 

  69.            catch 

  70.            { 

  71.                return View(); 

  72.            } 

  73.        } 

  74.  

  75.        // 

  76.        // GET: /Student/Delete/5 

  77.        /// <summary> 

  78.        /// 删除数据根据id 

  79.        /// </summary> 

  80.        /// <param name="id"></param> 

  81.        /// <returns></returns> 

  82.        public ActionResult Delete(int id) 

  83.        { 

  84.            EFFristModelEntities ef = new EFFristModelEntities(); 

  85.            var userInfo=ef.UserInfo.Where<UserInfo>(u => u.ID == id).FirstOrDefault<UserInfo>(); 

  86.            ViewData.Model = userInfo; 

  87.            return View(); 

  88.        } 

  89.  

  90.        // 

  91.        // POST: /Student/Delete/5 

  92.        /// <summary> 

  93.        /// 这个删除是post提交的,前面都要添加一个属性标签[HttpPost] 

  94.        /// </summary> 

  95.        /// <param name="id"></param> 

  96.        /// <param name="collection"></param> 

  97.        /// <returns></returns> 

  98.        [HttpPost]         

  99.        public ActionResult Delete(int id, FormCollection collection) 

  100.        { 

  101.            try 

  102.            { 

  103.                EFFristModelEntities ef = new EFFristModelEntities();//找到上下文 

  104.                //找到Id 

  105.                var user=ef.UserInfo.Where<UserInfo>(u => u.ID == id).FirstOrDefault<UserInfo>(); 

  106.                //判断这个用户是否为null 

  107.                if (user != null

  108.                { 

  109.                    ef.UserInfo.DeleteObject(user);//用这个上下文来取到这个用户id,删除 

  110.                    ef.SaveChanges(); 

  111.                    return RedirectToAction("Index");//删除成功就转向到这个显示数据 的页面 

  112.                } 

  113.                return Content("无数据"); 

  114.            } 

  115.            catch 

  116.            { 

  117.                return View(); 

  118.            } 

  119.        } 

以上是“MVC如何实现增、删、改、查”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注天达云行业资讯频道!

返回编程语言教程...