代码之家  ›  专栏  ›  技术社区  ›  Pinte Dani

ASP.NET MVC核心重定向页错误-指定根相对路径错误

  •  4
  • Pinte Dani  · 技术社区  · 6 年前

    我想从正常的控制器操作重定向到razor页面,如下所示:

    return RedirectToPage("Edit", new { id = blogId });
    

    我已经有一个名为“edit”的razor页面,在正常导航到它时,它正在工作: enter image description here

    RedirectToPage 我得到以下错误:

    InvalidOperationException:相对页路径“edit”只能是 在执行razor页面时使用。指定根相对路径 引导“/”在Razor页面之外生成URL。

    知道如何指定路径吗?

    1 回复  |  直到 6 年前
        1
  •  5
  •   CodeNotFound dotnetstep    6 年前

    这个错误已经给了您答案:您应该在开头添加前导'/',并指定到razor页面的相对路径。所以你应该

    return RedirectToPage("/BlogPosts/Edit", new { id = blogId });
    

    而不是

    return RedirectToPage("Edit", new { id = blogId });
    

    注意 “/blogposts/编辑” “编辑” 是的。 RedirectToPage 方法需要 路径 到你的razor页面(基于你的图像,相对路径是 “/blogposts/编辑” )启动根文件夹 Pages 默认情况下。