Comment lier Kendo UI Grille de Web API Contrôleur?
J'ai de la difficulté liaison de données à partir d'une API Web Contrôleur de Kendo UI grille. Malheureusement, je n'ai pas été en mesure de trouver des exemples de cette.
Voici l'API Contrôleur:
public class FruitController : ApiController
{
public class Fruit
{
public string Name { get; set; }
public string Color { get; set; }
}
public IEnumerable<Fruit> GetFruits()
{
List<Fruit> list = new List<Fruit>();
Fruit f = new Fruit();
f.Name = "Apple";
f.Color = "Red";
list.Add(f);
f = new Fruit();
f.Name = "Kiwi";
f.Color = "Green";
list.Add(f);
return list;
}
}
Et dans mon .cshtml fichier que j'ai:
@model IEnumerable<FruitController.Fruit>
@(Html.Kendo().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.Name);
columns.Bound(p => p.Color);
})
.Groupable()
.Pageable()
.Sortable()
.Scrollable()
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetFruits", "api/Fruit").Type(HttpVerbs.Get)
)
)
)
Lorsque je l'exécute, je reçois une réponse réussie JSON à partir du contrôleur:
[{"Name":"Pomme","Color":"Rouge"},{"Name":"Kiwi","Color":"Green"}]
Mais la grille n'a pas de données. Il est évident que je suis absent? Je n'ai pas été en mesure de comprendre cela!
Merci!
OriginalL'auteur Dave | 2012-07-20
Vous devez vous connecter pour publier un commentaire.
Avoir un oeil sur les exemples, il s'attend à un DataSourceResult. Dans votre contrôleur de comprendre une méthode qui fait quelque chose comme cela, alors cela fonctionne.
Je suis à la recherche à la création d'un aspect avec postsharp qui introduirait le créer/mettre à jour/supprimer des méthodes dans la classe de contrôleur qui Kendo exige.
Je pense que c'est effectivement bizarre que le Kendo n'est pas de fournir un attribut/aspect pour cette pour l'API de classes de contrôleur, mais peut-être que je manque quelque chose..
OriginalL'auteur user1496353
Ici est un tutoriel complet sur ce sujet. Espérons que cela aide
J'ai utilisé le Kendo outils comme il y a deux ans suivant le tutoriel. Il est de plus en javascript orienté, c'est vrai.
OriginalL'auteur coffekid
J'ai aussi eu des ennuis de Kendo de travailler pour une API contrôleur. Pour moi, cela a fonctionné pour passer de
using Kendo.Mvc.Extensions
àusing Kendo.DynamicLinq
.Dans mon Kendo source de données, j'ai enlevé le mystérieux ligne
type: aspnetmvc-ajax
et laparameterMap
.OriginalL'auteur Elaine Lin