从控制器到视图的数据传递

一、ViewData

1、ViewData是一种字典集合数据(即键值对类型),是“视图基类”和“控制器基类”的属性

2、常见用法是在控制器中写入数据,在视图中读取数据

3、ViewData的values可以存放任意数据类型的数据,因此使用时需要强制类型转换

二、ViewBag动态对象

1、ViewBag是dynamic类型对象,同样也是“视图基类”和“控制器基类”的属性

2、ViewBag使用更加灵活方便(可以直接使用,编写的时候不会进行错误检查,但是运行的时候没有就会报错)

3、ViewBag其实是对ViewData数据的一个包装,使用ViewData包装的数据可以使用ViewBag进行读取,反之亦然。实际开发过程中建议使用ViewBag

三、跨请求数据传递TempData

1、TempData的一种字典对象,也能用于控制器到视图的数据传递

2、TempData可以实现跨请求的数据传递

return RedirectToAction("action","controller")

3、TempData的保存机制和session但又不完全同于session

(1)、TempData中的数据一旦被使用就会被清除

(2)、TempData中的数据

原文地址:https://www.cnblogs.com/zjifafengfang/p/12024014.html

时间: 2024-10-07 15:20:29

从控制器到视图的数据传递的相关文章

Asp.Net Mvc 控制器与视图的数据传递

数据传递也就是控制器和视图之间的交互,比如在视图中提交的数据,在控制器怎么获取,或者控制器从业务层获得一些数据,怎么传递到视图中,让视图显示在客户端呢?带着这些疑问,我们接着看..        下面分别讲解asp.net mvc框架中有三种数据传递方式,分别是:ViewData,TempData,Model         ViewData:只能在一个动作方法中设置,在相关视图页面读取,说得再白一点就是只能在一个页面中使用.         例 在Act ion方法中设置:ViewData["

iOS开发中视图控制器ViewControllers之间的数据传递

iOS开发中视图控制器ViewControllers之间的数据传递 这里我们用一个demo来说明ios是如何在视图控制器之间传递重要的参数的.本文先从手写UI来讨论,在下一篇文章中讨论在storyboard中传递数据. 首先新建一个空工程,并添加一个根视图控制器类,如下图所示: # 在函数didFinishLunchingWithOption中添加几行代码,完成后如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 - (BOOL)application:(UIApplication

SpringMVC控制器与视图的数据交换

1,先创建spring的主配置文件(applicationContaxt.xml如果写在WEB-INF下,就不用配置context了,就是不用告诉它路径了,WEB-INF会自动加载的),由监听器负责加载 ,导入类库,添加spring支持 2,stru2的核心控制器就是咱自己写的Action  视图就是jsp  模型:数据访问层.业务逻辑层.实体类  StrutsPrepareAndExecuteFilter 3,SpringMVC:先在web.xml中配置核心控制器:添加servlet,Disp

ASP.NET MVC 之控制器与视图之间的数据传递

今天,我们来谈谈控制器与视图之间的数据传递. 数据传递,指的是视图与控制器之间的交互,包括两个方向上的数据交互,一个是把控制器的数据传到视图中,在视图中如何显示数据,一个是把视图数据传递到控制器中, 如何在控制器中获取,处理这些数据. ASP.NET MVC 中所有控制器都继承Controller类,而Controller又继承自ControllerBase,而ControllerBase下又包含ViewData以及TempData视图数据字典. 一,使用ViewData传递数据 ViewDat

003.MVC控制器与数据传递

一.控制器基础 什么是控制器? 控制器一般继承自System.Web.Mvc.Controller Controller类: 1.一个控制器可以包含多个方法(Action:操作/方法) 2.方法从请求中获取输入数据 3.处理及检索或更新数据库中的模型对象 4.方法输出结果,可以是一个视图或一个跳转 5.控制器方法使用传入的参数值执行处理以及检索或更新数据库中的模型对象.然后,会选择一个视图显示 方法响应输出(研究的目的:解决实际问题,实现任意选择视图,任意跳转(重定向)) 控制器的方法处理完请求

007-多控制器管理及其控制器间的数据传递

掌握 • 1.控制器以及view的多种创建方式 • 2.UINavigationController的简单使用:添加\移除子控制器 • 3.UINavigationBar内容的设置 • 4.Segue之数据传递 • 1.控制器以及view的多种创建方式 问题一:如何创建一个控制器? •控制器常见的创建方式有以下几种 1>通过storyboard创建控制器 •先加载storyboard文件(Test是storyboard的文件名) UIStoryboard *storyboard = [UISto

007-多控制器管理(控制器间的数据传递)

掌握 • 1.控制器以及view的多种创建方式 • 2.UINavigationController的简单使用:添加\移除子控制器 • 3.UINavigationBar内容的设置 • 4.Segue之数据传递 • 1.控制器以及view的多种创建方式 问题一:如何创建一个控制器? •控制器常见的创建方式有以下几种 1>通过storyboard创建控制器 •先加载storyboard文件(Test是storyboard的文件名) UIStoryboard *storyboard = [UISto

iOS_18_控制器切换_NavigationController_push方式_传递数据

最终效果图: storyboard示意图: BeyondViewController.h // // BeyondViewController.h // 18_控制器切换_navigation_push_通过storyboard方式 // // Created by beyond on 14-7-31. // Copyright (c) 2014年 com.beyond. All rights reserved. // #import <UIKit/UIKit.h> @interface Be

[iOS基础控件 - 6.11.3] 私人通讯录Demo 控制器的数据传递、存储

A.需求 1.搭建一个“私人通讯录”Demo 2.模拟登陆界面 账号 密码 记住密码开关 自动登陆开关 登陆按钮 3.退出注销 4.增删改查 5.恢复数据(取消修改) B.基本架构 1. 5个控制器 (1)导航控制器 NavigationController (2)登陆 UIViewController 输入账号密码 记住密码.自动登录开关 登陆跳转按钮 (3)联系人列表 TableViewController 注销功能 添加联系人跳转按钮 (4)添加联系人 UIView (5)查看.编辑 UI