跨控制器跳转view——RedirectToRoute和RedirectToAction

已知控制器AccountController.cs和HomeController.cs,如果从页面Account/Login直接跳转到Home/Index,可以利用RedirectToRoute和RedirectToAction两种方式:

public ActionResult Login()
        {
            return View();
            //return RedirectToRoute(new { controller = "Home", action = "Index" });
            //return RedirectToAction("Index", "Home");
        }

如上述代码所示,

第一行返回:

return View();直接返回Account/Login本身页面

第二行返回:

RedirectToRoute(new { controller = "Home", action = "Index" })

第三行返回:

RedirectToAction("Index", "Home")二、三行返回都可以跳转到不同控制器下的页面,分别利用了route和action。
时间: 2024-10-22 16:55:23

跨控制器跳转view——RedirectToRoute和RedirectToAction的相关文章

如何跨控制器跳转 iOS 返回到上上级控制器

TabBarController->控制器A ->控制器B ->控制器->C ->控制器-D 如何从D控制器返回到B控制器 方法: 假设B 控制器是:QTCheckAddObjectViewController QTCheckAddObjectViewController* addObject = self.navigationController.viewControllers[1]; [self.navigationController popToViewControll

创建控制器、控制器加载view过程、控制器view的生命周期、多控制器

在介绍四大对象的那篇博客中,可以基本了解到程序启动的过程: main-->UIApplicationMain-->创建UIApplication的实例和app代理AppDelegate的实例并设置好代理--->在程序启动后,也就是启动画面显示之后, AppDelegate创建UIWindow(可以是自动创建的,也可以手动创建) 现在讨论的问题是,如何创建控制器并设置为UIWindow的根控制器,然后加载出控制器中的view并显示出来. 本文目录 1.创建控制器的三种方式 2.控制器的vi

MVC使用TempData跨控制器传递信息而无需记住key的名称

通常情况下,使用TempData需要记住key的名称,本篇体验:通过帮助类,实现对TempData的设置.获取.删除. 关于传递信息的类: namespace MvcApplication1.Models { public class Notification { public bool IsShow { get; set; } public string Content { get; set; } } } 帮助类,使用TempData对信息处理: using System; using Sys

UI - 视图控制器跳转另一个视图控制器特效总结

1. 从一个视图控制器跳转另一个视图控制器的方式是可以进行设置的 CATransition *animation = [[CATransition alloc]init]; animation.duration = 1; animation.type = @"pageCurl";  //立方体翻滚效果 animation.subtype = @"fromBottom";  //从底部开始 [self.view.window.layer addAnimation:an

控制器跳转小常识

关于控制器跳转需要注意的问题: 一般三种方式进行跳转: push,modal,custom 一般跳转相应实现方法和注意点: 1.[self.navigationController pushViewController:jump animated:YES]; 适合跳转到代码编写的View上或者xib描述的View. 如果想跳转到storyboard搭建的controller用[self performSegueWithIdentifier:@"jump" sender:self]; 这

跨控制器调用

跨控制器调用就是在本控制器里调用其他控制器里的方法或属性. $u = A("User");//在该控制器里实例化其他控制器User对象,A快捷函数的用法:A([模块/]控制器标志 $u->member(); 也可以简写成:R("User/member");R函数是对A函数的一个封装. A和R函数不仅可以跨控制器,跨模块,还可以跨项目调用,A([项目名://][模块/]控制器标志),R([项目名://][模块/]控制器标志/方法名).

ThinkPHP 3.2.2跨控制器调用方法

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

ThinkPHP跨控制器调用方法

跨控制器调用方法 1. 先造对象,再调用里面的方法 $sc=new \Home\Controller\IndexController();  用绝对路径找echo $sc->ShuChu(); 2. $sc=new IndexController();  用相对路径 echo $sc->ShuChu(); 还可以使用thingkphp中的快捷方法 1. $sc=A("Index");      使用TP框架的快捷方法A来创建控制器对象  ()内直接写控制器名 [跨模块调用]

thinkphp3.2跨控制器调用其他模块的方法

thinphp中前台后台都有互相调用方法,这样可以省去重复内容. 1 2 $hello = new \Admin\Common\Fun\hello(); $hello->hehe(); 调用其他地方的方法同理. 如果是在同控制器里模块名可以省略. 如调用common里面的某个类的方法: 1 2 $hello = new \Common\Fun\hello(); $hello->hehe(); 框架里面提供了跨模块夸.控制器的 A() 方法 1 2 3 4 5 6 7 class GoodsCo