0

Ich habe die vielen Artikel auf SO bereits von der Telerik-Seite durchsucht, aber ich stehe immer noch auf dem Problem, wo meine Daten nicht geladen werden.Kendo Grid lädt keine entfernten JSON-Daten

Hier ist das Kendo Gitter in JS:

$("#ss-address-book-grid").kendoGrid({ 
    dataSource: { 
     type: "json", 
     transport: { 
      read: "http://localhost:65257/InternalDirect/GetAddresses" 
     }, 
     schema: { 
      model: { 
       fields: { 
        alias: { type: "string" }, 
        full_address: { type: "string" } 
       } 
      } 
     } 
    }, 
    sortable: true, 
    columns: 
    [ 
     { 
      field: "full_address", 
      title: "Address" 
     }, 
     { 
      field: "alias", 
      title: "Alias" 
     } 
    ] 
}); 

Ich bin versucht, eine MVC-Web-api zu schlagen - der Ruf und die Antwort erfolgreich empfangen ist, und im richtigen Format:

Allgemein :

Request URL:http://localhost:65257/InternalDirect/GetAddresses 
Request Method:GET 
Status Code:200 OK 

Antwort-Header:

Access-Control-Allow-Origin:* 
Cache-Control:no-cache 
Content-Length:125 
Content-Type:application/json; charset=utf-8 
Date:Mon, 27 Mar 2017 16:21:48 GMT 

Reaktion:

[{"alias":"Test Alias","full_address":"[email protected]"}, 
{"alias":"Test Alias 2","full_address":"[email protected] 2"}] 

Die Kendō grid UI geladen wird; Es werden keine JS-Fehler ausgegeben.

Sie können sehen, in der Antwort-Header habe ich Access-Control_Allow_Origin gesendet, da es Cross-Domain ist. Die Antwort scheint im richtigen Format zu sein.

Ich habe den 'Typ' geändert, um odata und jsonp zu sein. Ich habe auch den Datentyp im Leseabschnitt zu json/jsonp gesetzt.

Hat jemand Ideen zu diesem speziellen Problem?

Antwort

0

Ich habe es herausgefunden - ich brauchte einen Datenkopf und eine ID definieren - der folgenden geändert JS im Schema Abschnitt:

schema: { 
     data: "Data", 
     model: { 
     id: "full_address", 
     fields: { 
       alias: { type: "string" }, 
       full_address: { type: "string" } 
     } 
... 

Und die folgenden Änderungen an das JSON-Objekt zurückgegeben:

{"Data":[ 
    { 
     "alias":"Test Alias", 
     "full_address":"[email protected]" 
    }, 
    { 
     "alias":"Test Alias 2", 
     "full_address":"[email protected]" 
    }]}