$ .post легче кодировать, но с .ajax вы получаете большую глубину конфигурации, обработки ошибок, ..
м проекте ASP.net mvc3 я использую ajax-вызов для отправки данных json в метод создания действий в контроллере Company. Но когда я отлаживаю вызов ajax, он всегда заканчивается результатом ошибки, а не результатом успеха.
вызов ajax:
$.ajax({
url: '/Company/Create',
type: 'POST',
data: JSON.stringify(CreateCompany),
dataType: 'Json',
contentType: 'application/json; charset=utf-8',
success: function () {
alert('ajax call successful');
},
error: function () {
alert('ajax call not successful');
}
});
Мой метод действий в контроллере компании:
[HttpPost]
public ActionResult Create (Company company)
{
try
{
//Create company
CompanyRepo.Create(company);
return null;
}
catch
{
return View("Error");
}
}
Я уже отладил метод действия, но он завершает его так, как должен. Таким образом, данные, отправленные с помощью вызова ajax, будут обработаны и записаны в базу данных. (метод действия не использует часть catch).
Почему мой вызов ajax по-прежнему выдает сообщение «вызов ajax не выполнен»?