MVC Helper オブジェクトを介して Kendo UI グリッドを使用しています。ajax 呼び出しでエラーが発生した場合 (つまり、Web サーバーが利用できない場合)、リクエストはエラー コードを返しますが、Kendo UI グリッドは応答せず、データが返されていないかのように動作し続けます。
@(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;
}
}
Kendo UI グリッドで、呼び出しが失敗したときにページをエラー ページにリダイレクトする方法はありますか? ajax 呼び出しでできることはわかっていますが、Kendo UI MVC Helper 機能を使用したいと思います。
すべての ajax 呼び出しに適用されるグローバル エラー ハンドラーとしてこれを行う方法はありますか?