Я конвертирую ASP. NET MVC (. NET Framework) приложение в ASP. NET Core MVC. Это строго преобразование, я не могу вносить какие-либо критические изменения, следовательно, я не могу изменить ни маршруты, ни методы. Я не могу сопоставить ту же функциональность в ASP. NET Core MVC.
Работает ASP. NET MVC:
[HttpPut]
[Route("status")]
public async Task<IHttpActionResult> UpdateStatusByOrderGuid([FromUri] Guid orderGUID, [FromBody] POST_Status linkStatusModel)
{
}
[HttpPut]
[Route("status")]
public async Task<IHttpActionResult> UpdateStatusById([FromUri] Guid id, [FromBody] POST_Status linkStatusModel)
{
}
Не работает , ASP. NET Core MVC.
Я получаю сообщение об ошибке:
Microsoft.AspNetCore.Routing.Matching.AmbiguousMatchException: запрос соответствует нескольким конечным точкам
Код:
[HttpPut]
[Route("status")]
public async Task<IActionResult> UpdateStatusByOrderGuid([FromQuery] Guid orderGUID, [FromBody] POST_Status statusModel)
{
}
[HttpPut]
[Route("status")]
public async Task<IActionResult> UpdateStatusById([FromQuery] Guid id, [FromBody] POST_Status statusModel)
{
}
Мне нужно включить параметры запроса, когда он решает, какой маршрут. Он должен совпадать в зависимости от того, есть ли в строке запроса orderGUID
или id
.
Спасибо.