ASP.NET MVC 如何将请求映射到旧位置?

发布于 2024-11-02 09:53:57 字数 179 浏览 3 评论 0原文

我刚刚开始一个从 webforms 到 asp.net mvc 2 的升级项目。在站点的根目录中有一个名为 resources.aspx 的文件,我需要从 mvc 拦截该文件。如果我开始一个新项目,如果我尝试访问 resources.aspx 但我创建了一个资源控制器,我会收到 404 错误。如何使控制器映射到/resources.aspx?

I've just started an upgrade project from webforms to asp.net mvc 2. There is a file called resources.aspx in the root of the site that I need to intercept from mvc. If I start a new project I get a 404 if I try to access resources.aspx but I have created a resources controller. How do I make the controller map to /resources.aspx?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浪漫之都 2024-11-09 09:53:57

您可以在不创建控制器的情况下完成此操作。在RegisterRoutes中将其添加到routes.IgnoreRoute的正下方:

    routes.MapPageRoute("ResourcesOldRoute","resources","~/resources.aspx");

然后要使用它,您的URL将类似于 http://localhost/resources。

如果由于某种原因您需要控制器,那么您必须在 Index ActionResult 中重定向到它。

public ActionResult Index()
{
    return Redirect("/resources.aspx");
}

You could do this without creating a controller. Add this right below the routes.IgnoreRoute in RegisterRoutes:

    routes.MapPageRoute("ResourcesOldRoute","resources","~/resources.aspx");

Then to use it, your URL would be something like http://localhost/resources.

If for some reason you want the Controller then you will have to to redirect to it in the Index ActionResult.

public ActionResult Index()
{
    return Redirect("/resources.aspx");
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文