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

Windows Communication Foundation .NET Discussion :

Transformation objet entité en Json


Sujet :

Windows Communication Foundation .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Par défaut Transformation objet entité en Json
    Bonjour,

    J'ai une solution avec un modèle edmx (entity framework) et une classe de services WCF.
    Mon problème est que ma méthode (OperationContract) n'arrive pas à sérialiser mon résultat en Json dès que j'utilise des objets entité du modele edmx.
    Je m'explique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    [OperationContract]
    [WebGet(UriTemplate = "/GetMesClasses", ResponseFormat = WebMessageFormat.Json)]
    public MaClasse[] GetMesClasses()
    {
          var list = new MyClass[] {
                new MyClass {Id=1},
                new MyClass {Id=2},
                new MyClass {Id=3}
           };
           return list;
    }
    Ceci va très bien fonctionner dans mon application (même sans décorer MaClasse avec des DataContract).
    Ce code me retourne du Json exploitable dans mon code client (JavaScript).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    [OperationContract]
    [WebGet(UriTemplate = "/GetClients", ResponseFormat = WebMessageFormat.Json)]
    public Client[] GetClients()
    {
          using (var context = new Model.ModelContext())
          {
                return context.Clients.ToArray();
          }
    }
    Ceci ne fonctionne pas...
    Testé depuis mon client web, j'ai même pas de réponse (même pas une page d'erreur)

    On m'a déjà préconisé l'utilisation de POCOS mais je voudrais vraiment être sûr qu'il existe pas une solution plus simple à ce problème.

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Bizarre que cela ne fonctionne pas.
    Sinon essaies ça :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    [OperationContract]
    [WebGet(UriTemplate = "/GetClients", ResponseFormat = WebMessageFormat.Json)]
    public Client[] GetClients()
    {
          Client[] clients;
          using (var context = new Model.ModelContext())
          {
                cleints = context.Clients.ToArray();
          }
          return clients;
    }

    Si ce code ne marche pas alors regarde si le fichier de configuration contient bien une chaîne de connexion ModeContext.

    Dans tous les cas ton problème n'est pas lié au format JSON.

  3. #3
    Membre émérite Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Par défaut
    Normalement les entities passent bien les webservice, j'ai pas spécialement utilisé du json mais je pense qu'il faut détacher ces entities de leur contexte avant de les retourner.

Discussions similaires

  1. Transformer un objet Java en JSON
    Par otam2 dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 30/11/2012, 17h03
  2. [XML] [XML Writer] Échapper la transformation en entité
    Par sliderman dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 28/09/2008, 21h00
  3. Réponses: 1
    Dernier message: 15/07/2008, 23h59
  4. Transformer Objets en Base de données
    Par vain_mich dans le forum JDBC
    Réponses: 2
    Dernier message: 14/05/2007, 09h27
  5. [POO] transformation objet ?
    Par usoppu dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/07/2006, 13h11

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