asp.net mvc 花样传值
来源:互联网 发布:计算机处理数据的过程 编辑:程序博客网 时间:2024/04/29 01:10
[原创] asp.net mvc 花样传值(二)
asp.net mvc中的传值有很多种方法,比如用ViewData、ViewBag等若类型传值,还有继承自一个IEnumerable泛型接口的强类型传值,或一个自定义的实体类viewModel的方式传值,今天我们来介绍如何从数据表中取得数据,并用ViewData、ViewBag传递到View页面。
1.新建一个asp.net mvc应用程序,命名为MvcApp
2.新建一个数据库,并命名为MvcAppTest
3.建立一个表demo。表的定义如下图
4.在VS中新建一个LINQ to SQL类 并命名为Linq,把刚刚的MvcAppTest表拖进去
4.修改HomeController的代码,如下:
01
using
System;
02
using
System.Collections.Generic;
03
using
System.Linq;
04
using
System.Web;
05
using
System.Web.Mvc;
06
using
MvcApp.Models;
07
08
namespace
MvcApp.Controllers
09
{
10
public
class
HomeController : Controller
11
{
12
public
ActionResult Index()
13
{
14
LinqDataContext ld =
new
LinqDataContext();
//实例化LInqData对象
15
16
//查询user表中的数据并保存在ViewData中
17
ViewData[
"model"
] = from i
in
ld.user
18
orderby i.datetime descending
19
select i;
20
21
return
View();
22
}
23
24
public
ActionResult About()
25
{
26
return
View();
27
}
28
}
29
}
4.修改对应的View页面代码,如下:
01
@{
02
ViewBag.Title = "Home Page";
03
}
04
@foreach (var item in ViewData["model"] as IEnumerable<
MvcApp.Models.user
>)
05
{
06
07
<
ul
>
08
<
li
>@item.name</
li
>
09
<
li
>@item.sex</
li
>
10
<
li
>@item.datetime.ToString()</
li
>
11
</
ul
>
12
}
注意,在遍历ViewData["model"]的时候,要让其实现IEnumerable的接口。
在表中添加两条示例数据后运行如图:
下面来介绍另一直比较dynamic的ViewBig。
HomeController:
01
public
ActionResult Index()
02
{
03
LinqDataContext ld =
new
LinqDataContext();
//实例化LInqData对象
04
05
//查询user表中的数据并保存在ViewBag中
06
ViewBag.model = from i
in
ld.user
07
orderby i.datetime descending
08
select i;
09
10
return
View();
11
}
01
@{
02
ViewBag.Title = "Home Page";
03
}
04
@foreach (var item in ViewBag.model)
05
{
06
07
<
ul
>
08
<
li
>@item.name</
li
>
09
<
li
>@item.sex</
li
>
10
<
li
>@item.datetime.ToString()</
li
>
11
</
ul
>
12
}
小编Ps:ViewBag虽然比较简单, 但是由于ViewBag的动态特效,也导致它在VS中暂时不会有代码提示的功能。
其实还有一种传值TempData, 它和ViewData、ViewBag的区别是它可以在不同在页面中传值,并且只能实用一次,可以把它形容成一次性Session。用法和ViewData类,这里不在阐述。
下节我们来讲强类型传值,还请继续关注。
本文为MvcApp原创作品,欢迎转载!但必须保留原文链接:http://www.mvcapp.com/KnowledgeBase/Details/92b5443f-3bad-4adb-9c6a-af2930fd1cbf
- asp.net mvc 花样传值
- ASP.NET MVC表单传值
- ASP.net MVC向面面传值
- asp.net-mvc的传值方式
- ASP.NET MVC view与controller传值方式
- asp.net mvc+esayui解决Date类型传值
- Asp.net MVC的传值方式(一)
- ASP.NET MVC view与controller传值方式
- ASP.NET MVC中ActionResult返回值
- ASP.NET MVC 框架
- ASP.NET MVC 框架
- ASP.NET MVC
- ASP.NET MVC框架
- ASP.NET MVC框架
- ASP.NET MVC
- Asp.Net Mvc Study
- ASP.NET MVC框架
- Asp.Net MVC 概述
- 宏连接
- 桶排序用于海量数据排序的实验。
- 自由切换 Ubuntu也能双屏显示
- clock divider RTL 如何描述?
- Pig实战
- asp.net mvc 花样传值
- 从一个文件中随机抽取N行方法
- 程序员是这样炼成的(7)-水滴石穿
- 转载-滚动条的CSS样式
- 触发器 基础与应用
- 程序员是这样炼成的(8)-1+1<2
- WinCE控制面板添加应用程序
- 触发器 基础与应用(二)
- Q: 请问WinDriver是否支持OMAP架构?