You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Razor Page中如何从Page1正确重定向到App页面?

解决Razor Page中RedirectToPage不生效的问题

Hey 👋,我来帮你排查这个重定向失效的问题——这是Razor Pages开发里挺常见的坑,大多是因为没正确返回重定向结果或者路径/逻辑分支出了问题,下面是具体的解决步骤:

  • 必须返回RedirectToPage的结果
    Razor Page的OnGet方法(同步版返回IActionResult,异步版返回Task<IActionResult>),你不能只调用this.RedirectToPage("/App/App")就完事,必须把这个重定向结果return出去。很多人会忽略这一步,导致方法默认返回Page(),自然不会跳转。正确的写法应该是:

    public IActionResult OnGet(string parameter1)
    {
        // 你的参数校验逻辑
        if (string.IsNullOrEmpty(parameter1)) // 举个校验例子
        {
            // 关键:返回重定向结果
            return RedirectToPage("/App/App");
        }
    
        // 校验通过后的正常逻辑
        return Page();
    }
    
  • 确认目标页面路径的正确性
    检查你的目标页面结构是否确实是Pages/App/App.cshtml,这个路径写法是对的,但要注意大小写(本地Windows环境不敏感,但部署到Linux服务器会区分)。另外也可以用页面的Model类型来生成路径,避免手动写路径出错:

    // 假设App页面的Model类是AppModel
    return RedirectToPage(typeof(AppModel));
    
  • 验证校验逻辑是否走到了重定向分支
    加个断点或者打印日志,确认参数校验的场景确实触发了重定向的代码块。比如如果参数校验没满足跳转条件,那页面自然会停留在Page1。

  • 排查是否有拦截重定向的逻辑
    看看项目里有没有自定义的页面过滤器(PageFilter)或者中间件,会不会拦截了重定向请求并修改了响应结果。可以暂时注释掉这些自定义逻辑,测试下重定向是否正常生效。

内容的提问来源于stack exchange,提问作者Greg Gum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:32:08