【问题标题】:RedirectToAction in same controller not working?同一控制器中的 RedirectToAction 不起作用?
【发布时间】:2021-12-19 23:02:27
【问题描述】:

所以我尝试使用RedirectToAction() 重定向到同一控制器中的另一个操作。但是,我尝试过的一切都没有奏效。理想情况下,我希望能够键入链接 /projects/assign/2 并被重定向到 /projects/create 页面。 我尝试过的例子:

[HttpGet]
public IActionResult Assign(int? id)
{
    return View("Create", id);
}

还有:

[HttpGet]
public IActionResult Assign(int? id)
{
    return View("Create");
}

当我在地址栏中输入/projects/assign/2 时,我收到一条错误消息:

“此页面无法正常工作。如果问题仍然存在,请联系该站点 所有者。”

在这一点上,我不确定我做错了什么以及如何让它发挥作用。

非常感谢任何帮助/建议!谢谢!

【问题讨论】:

  • projects 是您的控制器名称吗?
  • 是的,对不起,我没有提到。

标签: c# asp.net asp.net-mvc asp.net-core-mvc


【解决方案1】:

应用以下Route 属性:

[Route("Create/{id:int?}")]      
[Route("Assign/{id:int?}")] 

public IActionResult Create(int? id)
{
   ...
}

欲了解更多信息,请参阅Routing in ASP.NET Core

【讨论】:

    【解决方案2】:

    只要修正行动路线

    [HttpGet("{id?}")]
    public IActionResult Assign(int? id)
    {
        return View("Create", id);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多