Подтвердить что ты не робот

Return bool из asp.net mvc actionresult

Я отправил форму через jquery, но мне нужно ActionResult, чтобы вернуть true или false.

это код, который для метода контроллера:

    [HttpPost]
    public ActionResult SetSchedule(FormCollection collection)
    {
        try
        {
            // TODO: Add update logic here

            return true; //cannot convert bool to actionresult
        }
        catch
        {
            return false; //cannot convert bool to actionresult
        }
    }

Как бы я создал свой JQuery-вызов для передачи данных этой формы, а также проверить, является ли возвращаемое значение истинным или ложным. Как отредактировать код выше, чтобы вернуть true или false?

4b9b3361

Ответ 1

Вы можете вернуть результат json в форме bool или с свойством bool. Что-то вроде этого:

[HttpPost]
public ActionResult SetSchedule(FormCollection collection)
{
    try
    {
        // TODO: Add update logic here

        return Json(true);
    }
    catch
    {
        return Json(false);
    }
}

Ответ 2

IMHO вы должны использовать JsonResult вместо ActionResult (для удобства обслуживания кода).

Чтобы обработать ответ со стороны JQuery:

$.getJSON(
 '/MyDear/Action',
 { 
   MyFormParam: $('MyParamSelector').val(),
   AnotherFormParam: $('AnotherParamSelector').val(),
 },
 function(data) {
   if (data) {
     // Do this please...
   }
 });

Надеюсь, это поможет:)

Ответ 3

Как насчет этого:

[HttpPost]
public bool SetSchedule(FormCollection collection)
{
    try
    {
        // TODO: Add update logic here

        return true;
    }
    catch
    {
        return false;
    }
}