在ASP.NET Core中,如果在同一个控制器中的两个POST操作都返回IActionResult,则可能会出现“无法继续路由。两个或多个操作都可以匹配以下请求”的错误。
为了解决这个问题,我们需要给每个POST操作指定一个唯一的路由名称。例如:
[HttpPost] [Route("api/contacts/add")] public IActionResult AddContact(Contact contact) { //添加联系人逻辑 }
[HttpPost] [Route("api/contacts/update")] public IActionResult UpdateContact(Contact contact) { //更新联系人逻辑 }
上面的代码给每个POST操作指定了不同的路由名称,分别为“add”和“update”,避免了路由冲突的问题。现在我们可以在同一个控制器中定义多个POST操作并返回IActionResult,而不用担心冲突。
希望这个解决方法可以帮助到你解决你的问题。