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>
效果展示展示

显示都是一样的,具体就是看怎么传递数据,每个都有自己的特色,按自己需求来选择方式。
ASP.NET MVC 数据传递进阶 从数据库拿到数据后的三种方式的更多相关文章
- Activiti进阶(二)——部署流程资源的三种方式
转自:http://blog.csdn.net/zjx86320/article/details/50234707 流程资源可以是各种类型的文件,在启动流程或流程实例运行过程中会被读取.下面介绍常用的 ...
- 四十:数据库之SQLAlchemy实现排序的三种方式
SQLAlchemy实现排序有三种方式一:order_by:查询的时候使用此方式根据某个字段或模型下的属性进行排序二:模型定义的时候,指定排序方式三:一对多的时候,relationship的order ...
- ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...
- 在ASP.NET MVC控制器中获取链接中的路由数据
在ASP.NET MVC中,在链接中附加路由数据有2种方式.一种是把路由数据放在匿名对象中传递: <a href="@Url.Action("GetRouteData&quo ...
- ASP.NET MVC中使用Unity进行依赖注入的三种方式
在ASP.NET MVC中使用Unity进行依赖注入的三种方式 2013-12-15 21:07 by 小白哥哥, 146 阅读, 0 评论, 收藏, 编辑 在ASP.NET MVC4中,为了在解开C ...
- android sqlite使用之模糊查询数据库数据的三种方式
android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: package com.e ...
- [转]Asp.net Mvc2中重构View的三种方式
本文转自:http://www.cnblogs.com/zhuqil/archive/2010/07/14/asp-net-mvc2-view-refactoring.html 我们在Asp.net ...
- Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式
Linux就这个范儿 第15章 七种武器 linux 同步IO: sync.fsync与fdatasync Linux中的内存大页面huge page/large page David Cut ...
- js replace 全局替换 以表单的方式提交参数 判断是否为ie浏览器 将jquery.qqFace.js表情转换成微信的字符码 手机端省市区联动 新字体引用本地运行可以获得,放到服务器上报404 C#提取html中的汉字 MVC几种找不到资源的解决方式 使用Windows服务定时去执行一个方法的三种方式
js replace 全局替换 js 的replace 默认替换只替换第一个匹配的字符,如果字符串有超过两个以上的对应字符就无法进行替换,这时候就要进行一点操作,进行全部替换. <scrip ...
随机推荐
- Day_09【常用API】扩展案例5_获取长度为5的随机字符串,字符串由随机的4个大写英文字母和1个0-9之间(包含0和9)的整数组成
分析以下需求,并用代码实现 1.定义String getStr(char[] chs)方法 功能描述:获取长度为5的随机字符串,字符串由随机的4个大写英文字母和1个0-9之间(包含0和9)的整数组成 ...
- Qt 视频播放器
#include <phonon/VideoPlayer> #include <phonon/SeekSlider> #include <phonon/MediaObje ...
- Kali:系统安装之后进行所需配置
apt设置源 由于官网的源需要墙或者想使用国内的源,可以修改source.list vi /etc/source.list 打开文件并修改为其他可用的源地址,以下可供参考 deb http://ftp ...
- Algorithms - Quicksort - 快速排序算法
相关概念 快速排序法 Quicksort 也是一个分治思想的算法. 对一个子数组 A[p: r] 进行快速排序的三步分治过程: 1, 分解. 将数组 A[p : r] 被划分为两个子数组(可能为空) ...
- JS的函数和对象三
复习 判断是否含有某个属性 对象.属性名 === undefined 对象.hasOwnProperty('属性名') '属性名' in 对象 方法 { say:function(){ this ...
- 破坏之王DDoS攻击与防范深度剖析【学习笔记】
一.DDoS初步印象 1.什么是分布式拒绝服务攻击? 1)首先它是一种拒绝服务攻击 我们可以这么认为,凡是导致合法用户不能访问服务的行为,就是拒绝服务攻击. 注:早期的拒绝服务主要基于系统和应用程序的 ...
- hrb
- python字典详细介绍
字典的用途 字典是Python提供的一种常用的数据结构,它用于存放具有映射关系的数据. 字典相当于保存了两组数据,其中一组数据是关键数据,被称为 key:另一组数据可通过 key 来访问,被称为 ...
- 【面经分享】互联网寒冬,7面阿里,终获Offer,定级P6+
点赞再看,养成习惯,微信搜索[敖丙]关注这个互联网苟且偷生的工具人. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的系列文 ...
- Flexible 应用
Flexibl.js 为我们做了一项工作,媒体查询工作,节约了许多操作 举个例子,移动端的页面设计稿是750px,我们自己换算rem单位,比如我想把屏幕划分为15等份,我就750/15=50,然后用所 ...