转自:http://www.cnblogs.com/shinima/p/3940452.html

1.提供视图模型对象

你能把一个对象作为View方法的参数传递给视图.

  1. public ViewResult Index()
  2. {
  3. DateTime date = DateTime.Now;
  4. return View(date);
  5. }

然后我们在视图中使用Razor的Model关键字来访问这个对象

  1. @{
  2. ViewBag.Title = "Index";
  3. }
  4. <h2>Index</h2>
  5. The day is: @(((DateTime)Model).DayOfWeek)

或者是

  1. @model DateTime
  2. @{
  3. ViewBag.Title = "Index";
  4. }
  5. <h2>Index</h2>
  6. The day is: @Model.DayOfWeek

2.使用ViewBag(视图包)传递数据

View  Bag 允许在一个动态的对象上定义任意属性,并在视图中访问它.这个动态的对象可以通过Controller.ViewBag属性访问它.

  1. public ViewResult Index()
  2. {
  3. ViewBag.Message = "Hello";
  4. ViewBag.Date = DateTime.Now;
  5. return View();
  6. }
  7. @{
  8. ViewBag.Title = "Index";
  9. }
  10. <h>Index</h>
  11. The day is: @ViewBag.Date.DayOfWeek
  12. <p />
  13. The message is: @ViewBag.Message

3. 使用View Data传递数据

MVC3.0之前,主要是通过这种方式传递数据,它是通过用 ViewDataDictionary类实现的,而不是动态的对象.ViewDataDictionary类是类似标准"键/值"集合,并通过

Controller类的ViewData属性进行访问的.这个方法,在视图中需要对对象进行转换.

  1. 控制器中:
  2. public ViewResult Index()
  3. {
  4. ViewData["Message"] = "Hello";
  5. ViewData["Date"] = DateTime.Now;
  6. return View();
  7. }
  8. 视图中:
  9. @{
  10. ViewBag.Title = "Index";
  11. }
  12. <h2>Index</h2>
  13. The day is: @(((DateTime)ViewData["Date"]).DayOfWeek)
  14. <p />
  15. The message is: @ViewData["Message"]

ASP.NET MVC 控制器向View传值的三种方法的更多相关文章

  1. MVC 控制器向View传值的三种方法(转)

    1.提供视图模型对象 你能把一个对象作为View方法的参数传递给视图. public ViewResult Index() { DateTime date = DateTime.Now; return ...

  2. ASP.NET MVC Controller向View传值的几种方式

    上几篇博文提到MVC和WebForm的区别,主要是MVC的Controller和View将传统的WebForm的窗体和后台代码做了解耦,这篇博文简单介绍一下在MVC中Controller向View是如 ...

  3. Asp.Net MVC向视图View传值的三种方法

    本文将总结Asp.Net MVC向视图View传值的三种常见的方法: ----------------------------------------------------------------- ...

  4. MVC-控制器向View传值的三种方法

    1.提供视图模型对象 你能把一个对象作为View方法的参数传递给视图. public ViewResult Index() { DateTime date = DateTime.Now; return ...

  5. MVC控制器向View视图传值的三种方法

    首先创建一个MVC的项目,其中需要一个控制器(TestController),三个视图(index,edit,detail) 1.项目结构如下:

  6. React Router v4 页面传值的三种方法

    传值方法 1.props.params 使用React router定义路由时,我们可以给指定一个path,然后指定通配符可以携带参数到指定的path: <Route path='/user/: ...

  7. ASP.NET MVC post请求接收参数的三种方式

    1.在控制器中建立一个PostDemo方法,建立视图创建一个表单 <h2>PostDemo</h2> name的值:@ViewBag.name <br /> nam ...

  8. ASP.NET MVC Controller向View传值方式总结

    Controller向View传值方式总结 总结发现ASP.NET MVC中Controller向View传值的方式共有6种,分别是: ViewBag ViewData TempData 向普通Vie ...

  9. asp.net MVC 网站图片防盗链的几种方法

    目录 1. 通过 URL Rewrite Module 组件 2. 通过 nginx 图片防盗链 3.自定义 HttpHandler 处理 4. 通过 MVC 自定义路由规则防盗链 5. 通过 MVC ...

随机推荐

  1. Oracle sysdate

    SYSDATE --可得到目前系统的时间 ex.       select sysdate from dual; sysdate       ----------       20-SEP-07    ...

  2. 学学数据库,记记sql

    (1)Truncate 和 Drop 和 Delete 1. TRUNCATE TABLE 在功能上与不带 Where 子句的 Delete 语句相同:二者均删除表中的全部行.但 TRUNCATE T ...

  3. SpringCloud学习后获取的地址

    关于SpringCloud + Docker 学习地址: (1) https://yq.aliyun.com/articles/57265 (2) https://yq.aliyun.com/team ...

  4. css 中input和select混排对齐问题

    当INPUT.SELECT及用图片做的button放在一起(并排放一起)时,没法子对齐,一个vertical-align:middle就可搞定.

  5. HighChartS cpu利用率动态图(Java版)

    来源:http://www.cnblogs.com/haifg/p/3217699.html   最近项目需要监控服务器cpu的利用率,并做成动态图.在网上查找了一些资料,最终选择了HighChart ...

  6. win7建立无线wifi热点的几个常见的问题

    命令行开启WiFi方法: 开启WiFi.bat netsh wlan set hostednetwork mode=allow netsh wlan set hostednetwork ssid=ss ...

  7. ZOJ 1049 I Think I Need a Houseboat

    原题链接 题目大意:Fred想在Louisiana买一套房子,但是堤坝不牢固,每年都要被河水侵蚀50平方英里.题目给出他豪宅的坐标,要求他被迫移民搬迁的年份. 解法:也没什么好说的,先求出两点间的距离 ...

  8. 一个好用的Log管理类

    public class L { private static String className; //所在的类名 private static String methodName; //所在的方法名 ...

  9. Spring AOP 实现功能权限校验功能

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 使用拦截器实现未登录时跳转到登录界面的功能 1 拦截器SecurityInterceptor 2spring-mvcxml拦 ...

  10. ExtJS ComboBox的用法+代码

    Ext.onReady(function() { var store = Ext.create('Ext.data.Store', { autoLoad : true, fields : ['valu ...