2015-12-08 27 views
0

我正在使用Kendo Grid for MVC。Kendo Grid未顯示索引動作數據

以下是我的控制器和操作。

public class ComplainController : Controller 
{ 
    private MSMContext db = new MSMContext(); 

    public ActionResult Index([DataSourceRequest]DataSourceRequest request) 
    { 
     var cOMPLAINs = db.COMPLAINs.Include(c => c.MASTER_FAULT); 
     var model = cOMPLAINs.Select(o => new 
     { 
      JOBSHEET_NO = o.JOBSHEET_NO, 
      CUSTOMER_NAME = o.CUSTOMER_NAME, 
      CUSTOMER_MOBILE = o.CUSTOMER_MOBILE, 
      COMPANY_NAME = o.COMPANY_NAME, 
      MODEL_NAME = o.MODEL_NAME 
     }); 
     return Json(model.ToDataSourceResult(request), JsonRequestBehavior.AllowGet); 
    } 
    public ActionResult GetData([DataSourceRequest]DataSourceRequest request) 
    { 
     var model = db.COMPLAINs.Select(o => new 
     { 
      JOBSHEET_NO = o.JOBSHEET_NO, 
      CUSTOMER_NAME = o.CUSTOMER_NAME, 
      CUSTOMER_MOBILE = o.CUSTOMER_MOBILE, 
      COMPANY_NAME = o.COMPANY_NAME, 
      MODEL_NAME = o.MODEL_NAME 
     }); 
     return Json(model.ToDataSourceResult(request), JsonRequestBehavior.AllowGet); 
    } 
} 

現在以下是我在視圖中使用的我的Kendo網格代碼。

@(Html.Kendo().Grid<WebMSM.Models.COMPLAIN>() 
    .Name("grid") 
    .Columns(columns => 
    { 
     columns.Bound(p => p.JOBSHEET_NO).Width(150); 
     columns.Bound(p => p.CUSTOMER_NAME).Width(400); 
     columns.Bound(p => p.CUSTOMER_MOBILE).Width(200); 
     columns.Bound(p => p.COMPANY_NAME).Width(200); 
     columns.Bound(p => p.MODEL_NAME).Width(150); 
    }) 
    .Pageable() 
    .Sortable() 
    .Scrollable() 
    .Filterable() 
    .HtmlAttributes(new { style = "height:430px;" }) 
    .DataSource(dataSource => dataSource 
     .Ajax() 
     .PageSize(20) 
     .Read(read => read.Action("GetData", "Complain")) 
    ) 
    ) 

如果我使用GetData行動,劍道電網工作正常顯示的所有數據。 但是如果我使用Index動作,Kendo Grid顯示但沒有數據。 在使用Index操作時,以下json數據顯示時沒有任何頁面佈局和HTML

{"Data":[{"JOBSHEET_NO":1018,"CUSTOMER_NAME":"HEMAL RATHOD","CUSTOMER_MOBILE":"9825369987","COMPANY_NAME":"SAMSUNG","MODEL_NAME":"NOTE 3"},{"JOBSHEET_NO":1019,"CUSTOMER_NAME":"MUKESH CHAUHAN","CUSTOMER_MOBILE":"9825305305","COMPANY_NAME":"APPLE","MODEL_NAME":"IPHONE 6"}],"Total":2,"AggregateResults":null,"Errors":null} 

我在想什麼?

回答

0
.DataSource(dataSource => dataSource 
    .Ajax() 
    .PageSize(20) 
    .Read(read => read.Action("GetData", "Complain")) 
) 
) 

需要改變,以

.DataSource(dataSource => dataSource 
    .Ajax() 
    .PageSize(20) 
    .Read(read => read.Action("Index", "Complain")) 
) 
) 

,如果你想要得到它與 「索引」 工作。如果您的數據源從不調用「索引」操作方法,那麼您的網格將始終爲空。

+0

是這就是我問的問題,如果我使用'索引',如你所說,我只是得到普通的JSON數據,如我的問題所示,沒有網格,沒有HTML。這就是我的問題。 – Hemal