zoukankan      html  css  js  c++  java
  • mvc 重定向的几种方式

    在RouteConfig添加一个简单的路由

                //新增路由
                routes.MapRoute(
                     name: "Article",
                     url: "Detial/{id}",
                     defaults: new { controller = "Article", action = "Detial", id = UrlParameter.Optional },
                     constraints: new { id = @"d+" }
                     //namespaces: new string[] { }
                );

    302重定向

            public ActionResult UrlTest1()
            {//302
                return Redirect("/Article/Detial/1");
            }
            public ActionResult UrlTest2()
            {//302
                return RedirectToAction("Detial", "Article", new System.Web.Routing.RouteValueDictionary(new { id = 2 }));
                //return RedirectToAction("Detial", "Article",new { id  = 1});
            }
            public ActionResult UrlTest3()
            {//302
                return RedirectToRoute("Article", new System.Web.Routing.RouteValueDictionary(new { id = 3 }));
                //return RedirectToRoute("Article", new { id = 1 });
            }

    301重定向

            public ActionResult UrlTest4()
            {//301
                return RedirectPermanent("/Article/Detial/4");
            }
    
            public ActionResult UrlTest5()
            {//301
                return RedirectToActionPermanent("Detial", "Article", new System.Web.Routing.RouteValueDictionary(new { id = 5 }));
                //return RedirectToActionPermanent("Detial", "Article", new { id = 1 });
            }
    
            public ActionResult UrlTest6()
            {//301
                return RedirectToRoutePermanent("Article", new System.Web.Routing.RouteValueDictionary(new { id = 6 }));
                //return RedirectToRoutePermanent("Article", new { id = 1 });
            }

    也可以自己设置

            public ActionResult UrlTest7()
            {//可设置
                return new RedirectToRouteResult("Article", new System.Web.Routing.RouteValueDictionary(new { id = 7 }), false) { };
            }
            public ActionResult UrlTest8()
            {//可设置
                return new RedirectResult("/Article/Detial/8", false);
            }

    要注意的是,在View()中指定不同的视图不是重定向

            public ActionResult UrlTest9()
            {//200
                return View("Detial", null, new { id = 9 });
            }

    第二个代码段和第三个代码段中的方法,都会用第四个代码段中的形式最后以Response.Redirect方法返回给客户端

  • 相关阅读:
    L18 如何快速查找文档获得帮助
    L4 如何在XCode中下进行工作
    L17 怎么向应用程序商店提交应用
    Unity 烘焙材质到单一贴图的脚本
    关于用Max导出Unity3D使用的FBX文件流程注解
    计算两点之间的角度的代码
    Unity3d iOS基本优化和高级优化
    91SDK接入及游戏发布、更新指南
    UNITY3D与iOS交互解决方案
    Unity3d与iOS交互开发——接入平台SDK必备技能
  • 原文地址:https://www.cnblogs.com/cheesebar/p/6007888.html
Copyright © 2011-2022 走看看