2016-04-19 8 views
0

Ich benutze Kendo MVC-Raster mit benutzerdefinierten Bindung von Datenquelle. Ich möchte einige Vorverarbeitung zu Resultset-Daten in clientseitigem JavaScript durchführen, bevor Sie die Daten an Grid binden. Aber ich weiß nicht, wie man die Ergebnismenge in der Schema-Methode der benutzerdefinierten Kendo-Bindung durchführt. Jeder bitte sagen Sie mir, wie man die Daten in der Schemamethode iteriert. Mein Code:Iteration von Resultset in Schema-Methode von Kendo MVC-Raster

.DataSource(dataSource => dataSource 
      .Custom() 
      .Type("aspnetmvc-ajax") 
      .Transport(transport => transport 
      .Read(new 
      { 
       url = Url.Action("Action", "Controller"), 
       beforeSend = new Kendo.Mvc.ClientHandlerDescriptor 
       { 
        HandlerName = "beforeSend" 
       } 
      }) 
      ) 
      .Schema(schema => schema 
       .Data("Data") 
       .Total("Total") 
       .Errors("Errors") 
      ) 
) 

Danke.

Antwort

0

können Sie das Schema verwenden Funktion „analysieren“, um die Server-Antwort zu analysieren: http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-schema.parse

ich nicht direkt sprechen, wie dies zu tun, um den MVC-Ansatz, aber in reinem Javascript können Sie dies tun konvertieren eine Eigenschaft Startdate zu einem Date-Objekt (zum Beispiel)

var mydataSource = new kendo.data.DataSource({ 
 
    transport: { 
 
     read: function(e) { 
 
     
 
     var data = GetData(); //do something to get data 
 
     e.success(data); 
 
     } 
 
    }, 
 
    schema: { 
 
      parse: function (response) { 
 
       $.each(response, function (i, item) { 
 
        if (item.StartDate && typeof item.StartDate === "string") { 
 
         item.StartDate = kendo.parseDate(item.StartDate); 
 
        } 
 
       }); 
 
       return response; 
 
      } 
 
     } 
 
    } 
 
});

genannt