5

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 呼び出しに適用されるグローバル エラー ハンドラーとしてこれを行う方法はありますか?

4

1 に答える 1

5

Kendo UI Grid でエラーを処理するには、この質問Kendo: Handling Errors in Ajax Data Requests を参照してください。

エラーを処理するデータソースにイベントを追加する必要があります。

于 2013-08-23T17:11:15.270 に答える