C# 重定向到OnPost中特定位置的Razor页面

C# 重定向到OnPost中特定位置的Razor页面,c#,asp.net-core,razor-pages,C#,Asp.net Core,Razor Pages,我有一个表单的OnPost函数 public IActionResult OnPost() { //Do some stuff return RedirectToPage("/Forms/Strategy"); } 这可以正常工作,RedirectToPage会在顶部打开Razor页面。但是,我更希望重定向打开表单/策略页面,在浏览器窗口顶部有一个特定的定位点。这个锚是: <h3><a id="RedirectTarget&qu

我有一个表单的OnPost函数

public IActionResult OnPost()
{
    //Do some stuff

    return RedirectToPage("/Forms/Strategy");
}
这可以正常工作,RedirectToPage会在顶部打开Razor页面。但是,我更希望重定向打开表单/策略页面,在浏览器窗口顶部有一个特定的定位点。这个锚是:

<h3><a id="RedirectTarget">Redirect Target</a></h3>
但是,这会导致一个错误:

InvalidOperationException:没有名为“/Forms/Strategy#returnstable”的页面与提供的值匹配


我假设我对RedirectToPage的URL结构不正确。

您可以使用。下面是一个例子:

return RedirectToPage("/Forms/Strategy", null, "RedirectTarget");
上面的
null
参数填充
pageHandler
参数,该参数仅使用默认页面处理程序

尽管
/Forms/Strategy
看起来像一个URL,但它实际上表示页面名称,作为相对于
页面
目录的路径。当您尝试使用
/Forms/Strategy#RedirectTarget
作为页面名称时,路由生成过程将无法找到匹配项

return RedirectToPage("/Forms/Strategy", null, "RedirectTarget");