应无所住,而生其心
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

C# MVC RedirectToAction跳转时候传递参数,Action之间传值

23403人阅读 2019/1/10 22:30 总访问:4712857 评论:0 收藏:0 手机
分类: .NET MVC

MVC Action之间传值,页面跳转传值



方法一:路由传值


很简单直接使用 RedirectToAction(string actionName, string controllerName, object routeValues)

这个方法的第三个就是用于传递参数的。

return RedirectToAction("About", new Users() { username = "x", age = 24, address = "j" });

接收:

public ActionResult About(Users user)
{
    return View();
}


传递一个匿名对象也是可以的

return RedirectToAction("About", new { username = "李清照", address = "三国" });

接收:

public ActionResult About(string username, string address)
{
    return View();
}


其实本质也是地址栏传参而已,所以要注意和路由设置冲突问题




方法二:TempData

  public ActionResult News() 
        {
            TempData["name"] = "AJ";

            return RedirectToAction("About");
        }


        public ActionResult About()
        {
            string name = TempData["name"].ToString();

            return View();
        }

tempdata是基于session实现的他是一个临时变量,一次请求中有效,第二次就失效了。
当然如果是一次请求中获取多少也是可以的,所以有些说获取一次会就被销毁的说法是错误的





欢迎加群讨论技术,群:677373950(满了,可以加,但通过不了),2群:656732739

评价