MVC中的控制器向视图传值有四种方式分别是

1 ViewDate  2.ViewBag   3.TempDate  4.Model

下面分别介绍四种传值方式

首先先显示出控制器中的代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace WebApplication1.Controllers
{
public class DefaultController : Controller
{
// GET: Default
/// <summary>
/// 1、提供视图模型对象
/// </summary>
/// <returns></returns>
public ActionResult Index()
{
DateTime date = DateTime.Now;//一个对象作为View方法的参数传递给视图
return View(date);
}
/// <summary>
/// 2、使用ViewBag(视图包)传递数据
/// </summary>
/// <returns></returns>
public ActionResult Edit()
{
//ViewBag 允许在一个动态的对象上定义任意属性,并在视图中访问它.这个动态的对象可以通过Controller.ViewBag属性访问它.
ViewBag.Name = "名字代号";
ViewBag.Age = "";
ViewBag.Hobby = "打篮球,打羽毛球等";
ViewBag.StrDate = DateTime.Now;
return View();
}
/// <summary>
/// 3、 使用View Data传递数据
/// </summary>
/// <returns></returns>
public ActionResult Detail()
{
//在MVC3.0之前,主要是通过这种方式传递数据,它是通过用 ViewDataDictionary类实现的,而不是动态的对象.
//ViewDataDictionary类是类似标准"键/值"集合,并通过Controller类的ViewData属性进行访问的.这个方法,在视图中需要对对象进行转换.
ViewData["Message"] = "Hello,World !";
ViewData["Date"] = DateTime.Now;
return View();
}
//使用TempDate来传递数据
public ActionResult tempdates()
{
//TempData 他和viewdate的用法差不多但是他比viewdate的好处是他可以做到夸不同页面之间的传值
TempData["Message"] = "名字信息";
TempData["Age"] = "";
TempData["Hobby"] = "打篮球,打羽毛球等";
TempData["Timess"] = DateTime.Now;
return View();
}
}
}

这个是第一个控制器中的方法传递的数据

 <div> 

        @{
ViewBag.Title = "Index";
}
<h1>当前时间</h1>
<h2>@(((DateTime)Model).Date)</h2>
<h2>@(((DateTime)Model).DayOfYear)</h2><br />
</div>

resault:

当前时间

2019/4/2 0:00:00

92

1.使用ViewBag

 <div>
@{ ViewBag.Title = "Edit"}
<h1>@ViewBag.Name</h1>
<h2>@ViewBag.Name</h2>
<h2>@ViewBag.Age</h2>
<h2>@ViewBag.Hobby</h2>
<h2>@ViewBag.StrDate</h2>
</div>

resault:

名字代号
22
打篮球,打羽毛球等

2019/4/2 15:59:26

2.View Data的用法

 <div>
@{
ViewBag.Title = "Detail";
}
<h2>@ViewData["Date"]</h2>
<h2>@ViewData["Message"]</h2>
<h2>@view</h2>
</div>

resault:

hello  World

2019/4/2 15:59:26

3.TempData的用法

 <div>
@{ ViewBag.Ttle = "tempdates";} <h1>@TempData["Message"]</h1>
<h1>@TempData["Age"] = </h1>
<h1>@TempData["Hobby"] </h1>
<h1>@TempData["Timess"]</h1> </div>

resault:

名字代号
22
打篮球,打羽毛球等

2019/4/2 15:59:26

4,model的用法如果有想知道的可以联系我.

MVC中控制器向视图传值的四种方式的更多相关文章

  1. .NET MVC框架中控制器接收参数的四种方式

    1.通过路由中的配置的参数名字直接接收(要求:两者同名) routes.MapRoute(                 name: "Default",             ...

  2. 第三节:Action向View传值的四种方式(ViewData、ViewBag、TempData、Model)

    简  介 在前面的章节中,我们已经很清楚,MVC工作模型的流程,Controller中的Action接收到客户端的请求,处理后要将数据返回给View,那么Action中是如何将数据返回给View的,二 ...

  3. Struts2中访问web元素的四种方式

    Struts2中访问web元素的四种方式如下: 通过ActionContext来访问Map类型的request.session.application对象. 通过实现RequestAware.Sess ...

  4. Delphi中动态创建窗体有四种方式

    Delphi中动态创建窗体有四种方式,最好的方式如下: 比如在第一个窗体中调用每二个,主为第一个,第二个设为动态创建 Uses Unit2; //引用单元文件 procedure TForm1.But ...

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

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

  6. 第四节:MVC中AOP思想的体现(四种过滤器)并结合项目案例说明过滤器的实际用法

    一. 简介 MVC中的过滤器可以说是MVC框架中的一种灵魂所在,它是MVC框架中AOP思想的具体体现,所以它以面向切面的形式无侵入式的作用于代码的业务逻辑,与业务逻辑代码分离,一经推出,广受开发者的喜 ...

  7. Action向视图传值的6种方式

    在使用ASP.NET MVC进行项目开发时,经常会碰到从Action向视图传值的问题,今天我就把我所知道的方式总结了一下,分成了以下六种: 1.使用ViewData进行传值 在Action中,有如下代 ...

  8. Action向视图传值的6种方式(转)

    在使用ASP.NET MVC进行项目开发时,经常会碰到从Action向视图传值的问题,今天我就把我所知道的方式总结了一下,分成了以下六种: 1.使用ViewData进行传值 在Action中,有如下代 ...

  9. MVC中提交表单的4种方式

    一,MVC  HtmlHelper方法 Html.BeginForm(actionName,controllerName,method,htmlAttributes){} BeginRouteForm ...

随机推荐

  1. Unity容器声明周期管理

    Having said that, here is a solution that you can use with the Unity container: Create some custom a ...

  2. Centos编译Redis4.0.9源码过程记录

    mkdir /home/redis cd /home/redis 下载源码 wget https://codeload.github.com/antirez/redis/tar/4.0.9 解压源码包 ...

  3. solr精确查询,查询关键字分词后,指定满足匹配所有

    一.solr查询,查询配置了查询分词器的字段,默认会对查询关键字做分词处理 1.如查询关键字F1501ZY000011,使用solr7自带的中文分词器,默认会分词为:f,1501,zy,000011 ...

  4. [jOOQ中文]3. 数据库版本管理工具Flyway

    https://segmentfault.com/a/1190000010526452 在执行数据库迁移时,我们推荐使用jOOQ与Flyway - 数据库迁移轻松. 在本章中,我们将简单的来使用这两个 ...

  5. Mysql 查询列名

    #列名 select COLUMN_NAME from information_schema.columns where TABLE_SCHEMA='yunpiaobox_db' and table_ ...

  6. 【322】python控制键盘鼠标:pynput

    参考:python实战===python控制键盘鼠标:pynput 参考:[Python Study Notes]pynput实现对鼠标控制 参考:pynput doc 参考:pynput Packa ...

  7. Ssm框架常见报错

    错误1: The origin server did not find a current representation for the target resource or is not willi ...

  8. Python_03-数据类型

    1.1   数据类型 基本数据类型:字符串,整数,浮点数,布尔型 集合类型:列表(list), 元组(tuple), 字典(dictionary或hash) 列表(list)的定义: aList = ...

  9. react native 导航路由组件react-navigation的使用

    navigation的几个难点和问题: 1.底部tab是否可以加上中间的大按钮? 如果加上,如何触发事件? js文件放哪? 2.navigation的登录注册页面.成功后应该不能返回刚刚的登录页面?清 ...

  10. 信息传递(tarjan)

    信息传递 http://uoj.ac/problem/146 有 n 个同学(编号为 1 到n )正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为 i的同学的信息传递对象 ...