View()/Redirect()/RedirectToAction()的区别(控制器调用另一个控制器||视图)

如:

public actionResult Index

{

return viewn()  --返回默认视图Index.cshtml

return View("PayList")  --从Index控制器调用PayList.cshtml  注:此处仅仅是调用视图,并未经过PayList控制器,如果控制器中有逻辑代码则就调用不到了

return Redirct("Pay/PayList"); --只能通过url路径跳转(无重载)

return RedirctToAction("PayList")  --从Index控制器调用PayList控制器,最后返回PayList.cshtml视图

}

public actionResult PayList

{

return View();  --返回默认视图PayList.cshtml视图

}

时间: 2024-10-11 11:51:29

View()/Redirect()/RedirectToAction()的区别(控制器调用另一个控制器||视图)的相关文章

yii 使用renderPartial调用另外一个控制器的视图

以下由我们在信易网络公司开发项目的时候终结出的一些经验 我们可以使用renderPartial访问存储在不同控制器的视图文件夹中的部分视图文件. 在Yii1.1.3中,我们使用双斜线"//",程序就会从视图文件夹开始搜索,例如: protected/views/library/_book.phprenderPartial('//library/_book', array('books'=>$books)) 如果使用单斜杠"/"开始搜索,程序就会跳出当前的活动模

ThinkPHP 3.2.2跨控制器调用方法

 所谓跨控制器调用,指的是在一个控制器中调用另一个控制器的某个方法.在ThinkPHP中有三种方式实现跨控制器调用: 直接实例化: A()函数实例化; R()函数实例化. (1)直接实例化  直接实例化就是通过new关键字实例化相关控制器,例如: 1 $goods = new GoodsController() //直接实例化Goods控制器类 2 $info = $goods->info(); //调用Goods控制器类的info()方法 需要注意的是,如果实例化的控制器与当前控制器不在同一目

集合视图控制器(CollectionViewController) 、 标签控制器(TabBarController) 、 高级控件介绍

  1 创建集合视图,设置相关属性以满足要求 1.1 问题 集合视图控制器UIConllectionViewController是一个展示大量数据的控制器,系统默认管理着一个集合视图UICollectionView,功能几乎和UITableViewController差不多,能够以多行多列的形式展示数据. 集合视图UICollectionView继承至UIScrollView,也同tableView一样有两个协议,分别是UICollectionViewDataSource数据源协议和UIColl

iOS视图控制器编程指南 --- 实现一个容器视图控制器

容器视图控制器是一种结合多个视图控制器的内容到一个单一的用户界面上的方式.容器视图控制器经常被用来使导航更方便,基于已经存在的内容创建一个新的用户界面类型.例如,在UIKit中的容器视图控制器包括UINavigationcontroller,UITabBarcontroller 和 UISplitViewcontroller,它们都可以使用户界面在不同视图部分之间的切换和导航更加的容易. 设计一个自定义的容器视图控制器 在几乎所有的方面,一个容器视图控制器就像其它任何一个内容视图控制器一样,它管

隐藏导航栏之后支持手势退回上一个控制器

说明 1. 我们在隐藏导航栏之后,手势退回就会消失,但可以通过一些手段来继续支持手势 2. 在对导航栏控制器的根控制器使用的时候要特别注意,会导致bug出现,但可以通过禁用手势解决 3. 对于定制达人来讲,必须使用自己写的导航栏view才可以,因为系统的导航栏上面有一个灰色的线条无法去除. 设置 导航栏控制器隐藏导航栏 在导航栏控制器的rootController中设置手势代理 在根控制器上,从根控制器进入另外一个控制器的时候,让手势激活,返回根控制器的时候,不支持手势即可.

initWithFrame、initWithCoder、awakeFromNib的区别和调用次序 & UIViewController生命周期 查缺补漏

当我们创建或者自定义一个UI控件时,就很可能会调用awakeFromNib.initWithCoder .initWithFrame这些方法.三者的具体区别如下: initWithFrame: 通过代码创建UI控件的时候就会调用: initWithCoder:从文件中解析一个对象的时候就会调用这个方法,也就是说无论是通过代码还是xib,程序运行的时候都会调用这个方法: awakeFromNib:当一个对象从xib或者storyboard中加载完毕后,就会调用一次. 比如:当苹果官方提供的按钮不能

直接请求转发(Forward)和间接请求转发(Redirect)两种区别?

用户向服务器发送了一次HTTP请求,该请求肯能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉不到请求转发的.根据转发方式的不同,可以区分为直接请求转发(Forward)和间接请求转发(Redirect)两种有何区别呢?本篇在回答该问题的同时全面的讲解两种请求转发方式的原理和区别. [关键考点] 请求转发的含义: Forward转发请求的原理: Redirect转发请求的原理. [考题分析] Forward和Redirect代表了两种请求转发方式:

控制器的创建和控制器View的创建

一.控制器的创建 1.第一种创建方式 FCViewController *vc = [[FCViewController alloc] init]; 2.第二种创建方式 // 加载UIStoryboard(注意:仅仅是加载名称叫做Test的storyboard, 并不会创建storyboard中的控制器以及控件) UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Test" bundle:nil]; // 创建s

View 和 SurfaceView的区别

这里说的是在绘图中两者的区别: 1View在绘图中,重写onDraw(Canvas canvas)方法,通过invaldate()和pastInvalidate()两个方法进行重新绘制画布; invalidate()不能再自己创建的线程中循环调用: postInvalidate()可以在自己创建的线程中循环调用执行.如果不在当前View 创建线程循环重绘画布的话,这两种重绘画布的函数就没什么区别了,都可以用. public class MyView extends View { private