Я сталкиваюсь со странной проблемой на нескольких страницах моего сайта ASP.NET MVC. Когда я отправляю форму и модель НЕ действительна, я пытаюсь вернуть то же представление, чтобы увидеть ошибки - однако вместо перезагрузки страницы появляется всплывающее окно загрузки, в котором говорится, что файл в формате "application / json". Как видно из приведенного ниже кода, метод контроллера возвращает ActionResult, а НЕ JsonResult:
[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
var isValid = IsUserAuthenticated(model);
if (isValid)
{
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return User.IsInRole("Administrator")
? RedirectToAction("Index", "Admin")
: RedirectToAction("Index", "Home");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
Когда я отправляю свою форму, не заполняя ее, я вижу, что Модель не проходит проверку (правильно), но когда она достигает последней строки, "return View (model);" - он возвращает весь HTML, который я ожидаю, - но тип контента установлен на «application / json». Я нигде не устанавливаю тип содержимого в своем коде - поэтому я не могу понять, почему это происходит. То же самое происходит и на других страницах, поэтому я думаю, что есть кое-что фундаментальное, что я делаю неправильно, но я не могу понять это.
Есть мысли?