в моем проекте ASP.NET у меня есть форма, которая отправляет данные через POST в метод, который выглядит так:
[HttpPost]
public IActionResult PerformanceControl(int id, string button, ShowPerformanceControlViewModel viewModel)
{
//some logic
return RedirectToAction("PerformanceControl");
}
После того, как логика запустится, она должна перенаправить на следующее действие:
[HttpGet]
public IActionResult PerformanceControl(int id)
{
//some logic
return View(model);
}
Моя проблема в том, что RedirectToAction внезапно перестает работать, хотя до этого перенаправление работало 100 раз. Я использую Windows Server 2012 и IIS8. Остальная часть сайта до сих пор работает его только этот контроллер в котором вдруг перестает работать RedirectToAction. Я получаю только 404 для запроса GET к PerformanceControl.
Обновление:
Сегодня узнал почему не работает. Функции, которые перестают работать, зависят от внешнего сервера, размещенного на том же компьютере. Эта служба перестает принимать запросы, и поскольку в контроллере нет обработки ошибок, исключение просто запускается, и RedirectToAction никогда не будет выполнено. Журналы внешней службы «Connection_Dropped_List_Full DefaultAppPool» предназначены для сброса или сброса этого списка в IIS?
PerformanceControl
? - person D-Shih   schedule 20.06.2018app.UseExceptionHandler("/Home/Error");
, но вы также, вероятно, должны обернуть свою логику в блоке try/catch в контроллере. - person Mark G   schedule 21.06.2018