MarcusV(南墙大佬的搬运工)

南墙大佬的CSDN博客地址

导航

ASP.NET MVC 数据传递进阶 从数据库拿到数据后的三种方式

目录

回顾
数据
显示

因为这个小练习有EF的一些东西,我们来回顾一下。

一。回顾

回顾一点EF的知识怎么生成数据库模型。

1.首先我们在Models文件夹右键添加新建项,在数据分栏下有ADO.NET实体数据模型。
在这里插入图片描述
修改完名称后点击添加按钮,选择第一个,来自数据库的EF 设计器,点击下一步
在这里插入图片描述
添加链接,如果不是你的想要的数据库,点击新建连接。
在这里插入图片描述
输入数据库服务器名称,选择你的数据库,点击确定
在这里插入图片描述
会更新你的链接字符串,点击下一步
在这里插入图片描述
选择你想要的表,点击完成,创建成功。
在这里插入图片描述

二。数据

我们先写一个方法,查询一下数据

public  static List<Users> users()
        {
            using (fashionshoppingDBEntities db=new fashionshoppingDBEntities())
            {
                return db.Users.ToList();
            }
        }

三。然后我们来进行数据显示,我们分成3个传递来进行。

1.ViewBag方式

在控制器调用users()方法,以ViewBag属性传到页面

public ActionResult Index()
        {
            ViewBag.users = users();
            return View();
        }

页面实现代码

h1> ViewBag 用户列表</h1>
        <ul>
            @foreach (var item in ViewBag.users)
            {
                <li>姓名:@item.username</li>
            }

        </ul>

效果展示展示
在这里插入图片描述

2.ViewData方式

在控制器调用users()方法,以ViewData属性传到页面

 public ActionResult Index()
        {
            ViewData["users"] = users();
            return View();
        }

页面实现代码

<h1>ViewData 用户列表</h1>
        <ul>
            @foreach (var item in ViewData["users"] as List<MVC_T2_1.Models.Users>) //导入了一个命名空间
            {
                <li>姓名:@item.username</li>
            }

        </ul>

效果展示展示
在这里插入图片描述

2.Model方式

在控制器调用users()方法,直接以View()方法直接传到页面

 public ActionResult Index()
        {
            return View(users());
        }

页面实现代码

<h1>Model 用户列表</h1>
        <ul>
            @foreach (var item in Model)
            {
                <li>姓名:@item.username</li>
            }

        </ul>

效果展示展示
在这里插入图片描述
显示都是一样的,具体就是看怎么传递数据,每个都有自己的特色,按自己需求来选择方式。

posted on 2020-05-22 10:31  MarcusV  阅读(177)  评论(0编辑  收藏  举报