IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET MVC Discussion :

Afficher des données avec Kendo.Combobox en ASP.net MVC


Sujet :

ASP.NET MVC

  1. #1
    Membre du Club
    Inscrit en
    Mai 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 108
    Points : 62
    Points
    62
    Par défaut Afficher des données avec Kendo.Combobox en ASP.net MVC
    Salut,
    je debute dans le developpement d 'application MVC avec C#. Pour l affichage des données j'utilise le composant Combobox de Telerik Kendo.
    Mais j ai une difficulté au niveau de l'affichage des données, aucune données n est affichées par le combobox. Pourtant j utilise un code similaire a celui que j avais utilisé pour un Grid. Avec le grid ca fonctionne parfaitement.
    Quelqu ' un pourrait-il m aider?
    Voici le code utilisé pour le combobox:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    @(Html.Kendo().ComboBox()
                                  .Name("medium")
                                  .HtmlAttributes(new { style = "width:300px" })
                                          .Placeholder("Gattung...")
                                          .DataTextField("FIRST_NAME")
                                          .DataValueField("PERSON_ID")
                                          .DataSource(source =>
                                          {
                                              source
     
                                                  .Read(read =>
                                              {
                                                  read.Action("PersonNew_Read", "Grid");
                                              });
                                          })
                    )
    voici le code pour le Grid ...qui fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    @(Html.Kendo().Grid<TelerikMvcAppEmail_Procedure72.Models.PersonNewModel>()
            .Name("grid")
            .Columns(columns =>
            {
                columns.Bound(p => p.PERSON_ID);
                columns.Bound(p => p.FIRST_NAME);
                columns.Bound(p => p.LAST_NAME);
            })
            .DataSource(dataSource => dataSource
            .Ajax()
            .PageSize(20)
                    .Read(read => read.Action("PersonNew_Read", "Grid"))
            )
                    .Pageable()
                    .Sortable()
                    .Scrollable()
                    .Filterable()
                        //.HtmlAttributes(new { style = "height:550px;" })
     
                )
    Ici le code de mon Controller
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public ActionResult PersonNew_Read([DataSourceRequest]DataSourceRequest request)
            {
                var result = db.People.Select(p => new PersonNewModel { PERSON_ID = p.PERSON_ID, FIRST_NAME = p.FIRST_NAME, LAST_NAME = p.LAST_NAME });
     
                return Json(result.ToDataSourceResult(request));
            }

  2. #2
    Membre du Club
    Inscrit en
    Mai 2003
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 108
    Points : 62
    Points
    62
    Par défaut
    Salut a tous,
    voici le message d erreur qui s'affiche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    The entity or complex type '{0}' cannot be constructed in a LINQ to Entities query.

  3. #3
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Pour la ComboBox, tu dois retourner un JsonResult, tu peux supprimer le paramètre request (sauf si tu en as besoin, ce qui ne semble pas être le cas ici...) et il n'est pas nécessaire d'appeler la méthode ToDataSourceResult :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public JsonResult PersonNew_Read()
    {
        var result = db.People.Select(p => new PersonNewModel { PERSON_ID = p.PERSON_ID, FIRST_NAME = p.FIRST_NAME, LAST_NAME = p.LAST_NAME });
     
        return Json(result);
    }
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. afficher des données avec jointure en 4 tables
    Par ammar.dev dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 10/11/2015, 17h59
  2. Réponses: 1
    Dernier message: 10/03/2013, 13h31
  3. Réponses: 2
    Dernier message: 07/05/2011, 16h56
  4. afficher des donnée avec une page JSP
    Par alfred5 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 02/04/2011, 16h56
  5. Afficher des données avec un WebUserControl
    Par GilardeauG dans le forum ASP.NET
    Réponses: 11
    Dernier message: 16/09/2010, 13h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo