首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何管理mvc4中的url路由?

如何管理mvc4中的url路由?
EN

Stack Overflow用户
提问于 2015-02-22 12:09:58
回答 1查看 327关注 0票数 0

我在研究url路由

  1. 我想重定向页面而不更改url。

当键入url www.example.com/Default.aspx时,该时间url显示为相同,但返回页主页/索引(Controller/Action)

  1. 我想用实际的网址重定向页面。

第二个要求是,当输入www.example.com/Default.aspx时,在地址栏Home/Index中显示url并返回此页面。

如何可能,请详细描述。

提前谢谢你。

EN

回答 1

Stack Overflow用户

发布于 2015-02-24 21:06:28

我认为最干净的方法是在IIS中使用URL重写模块。但是,当您询问如何在MVC中执行此操作时,我将首先讨论这一点:

实现1(当请求/default.aspx时,返回/home/index。在路由表中添加以下内容:

代码语言:javascript
运行
复制
routes.MapRoute("HomepageDefault", "default.aspx", new { controller = "Home", action = "Index" });

要实现2,您需要重定向请求--最简单的方法是设置一条路由,直到执行结果,然后重定向:

代码语言:javascript
运行
复制
routes.MapRoute("RedirectRoute", "default.aspx", new { controller = "Home", action = "Redirect" });

然后在ActionResult中:

代码语言:javascript
运行
复制
    public ActionResult Redirect()
    {
        return RedirectToAction("Index", "Home");
    }

另一种方法是使用IIS中的URL重写模块来实现这一点。

为实现1:

代码语言:javascript
运行
复制
    <rewrite>
      <rules>
        <rule name="Rewrite rule">
          <match url="^default.aspx$" />
          <action type="Rewrite" url="/home/index" />
        </rule>
      </rules>
    </rewrite>

实现2项目标:

代码语言:javascript
运行
复制
    <rewrite>
      <rules>
       <rule name="redirect">
         <match url="^default.aspx$" />
         <action type="Redirect" url="/home/index" />
        </rule>
      </rules>
    </rewrite>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28657627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档