2013-08-22 4 views
4

Я использую сетку пользовательского интерфейса Kendo через объект MVC Helper. Если в вызове ajax возникает ошибка (т. Е. Веб-сервер недоступен), запрос возвращает код ошибки, однако сетка пользовательского интерфейса Kendo не отвечает и просто продолжает действовать так, как если бы данные не возвращались.Ошибка управления сетью Kendo в MVC

@(Html.Kendo().Grid<ProcessInformation>() 
       .Name("Grid") 
       {Edited for brevity} 
       .DataSource(datasource => datasource.Ajax() 
        .Read(read => read.Action("SearchProcesses", "SystemProcess") 
         .Data("searchSerialize")) 
        .PageSize(10) 
      ).Name("ResultsGrid").Events(events => events.DataBound("gridOnBound"))) 

событие MVC ниже:

public ActionResult SearchProcesses(
     [DataSourceRequest] DataSourceRequest request, string startDate, string endDate, string status, int dataProcessType) 
    { 
     try 
     { 
      //does the search and returns the object 
     } 
     catch (Exception e) 
     { 
      this.log.ErrorException("Error Encountered in WebInternal.SearchProcesses()", e); 
      var result = new JsonResult 
      { 
       Data = new { Redirect = "../Error/Unexpected" }, 
       JsonRequestBehavior = JsonRequestBehavior.AllowGet 
      }; 
      return result; 
     } 
    } 

Есть ли способ, чтобы сетка Кендо UI перенаправлять страницу на страницу ошибки на неудавшийся вызов? Я знаю, что могу сделать это с помощью ajax-вызова, но я бы предпочел использовать функциональность Kendo UI MVC Helper.

Есть ли способ сделать это как глобальный обработчик ошибок, который будет применяться ко всем вызовам ajax?

+0

Я считаю, что вы можете создать обработчик для вызовов ajax, но, как вы сказали, трюк будет получать сетку, чтобы что-то сделать с ошибкой, так как она инициирует запрос. Я не верю, что вы можете вернуть перенаправление от вызова ajax, который будет обходить сетку. – asymptoticFault

+0

Это может быть полезно http://stackoverflow.com/questions/13653662/kendo-handling-errors-in-ajax-data-requests – asymptoticFault

+0

Это закончило работу. Если вы можете положить это в ответ, это было бы здорово. – sevargdcg

ответ

Смежные вопросы