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 :

[WCF et Entité] Problèmes cycliques


Sujet :

Windows Communication Foundation .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut [WCF et Entité] Problèmes cycliques
    Bonjour,

    J'ai un problème d'utilisation de WCF avec linq.

    En gros lorsque je renvois des données composé de beaucoup d' "entités Dlinq" lié entre elle j'ai ce type d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ComunicationException
    There was an error while trying to serialize parameter http://tempuri.org/:record. The InnerException message was 'Object graph for type 'Cephalon.Regstup.Common.RegstupService.MedicamentRecordQuantity' contains cycles and cannot be serialized if reference tracking is disabled.'.  Please see InnerException for more details.
    En gros c'est du au fait que lorsque l'on a une relation de type :
    Un objet Personne a un objet Adresse => l'objet Adresse contient un EntitySet des objets Personne qui ont cette addresse.
    D'où le cycle à la serialisation (le sérialiseur sérialise l'objet personne puis son adresse relative puis les personne relative puis l'adresse relative, etc)

    J'avais déjà résolu ce problème de serveur => client avec un attribut qui customise la serialisation effectué par le ServerHost mais je ne trouve pas de solution pour le Client => Server.

    Il est dit d'activer le "reference tracking" mais je ne trouve pas comment l'activer.

    Donc voila si quelqu'un a déjà eu ce genre de problème est ce qu'il pourrait me dire comment il l'a résolu ?

    Merci

  2. #2
    Membre éclairé Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Par défaut
    Salut,

    tu utilises "l'antipattern" WCF + linq...

    j'ai aussi eu ce problème, et je n'ai pas trouvé de solution adroite avec linq to sql.

    Apparemment il faut attendre linq to entity.(nhibernate?)

    En attendant, je ne serialize pas les relations.

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par gdkenny Voir le message
    Apparemment il faut attendre linq to entity
    Attendre ? Plus besoin d'attendre, les SP1 de VS2008 et du framework 3.5 sont sortis il y a quelques semaines

  4. #4
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  5. #5
    Membre éclairé Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Attendre ? Plus besoin d'attendre, les SP1 de VS2008 et du framework 3.5 sont sortis il y a quelques semaines

    je savais que le sp1 était sortie mais pas qu'il contenait linq to entity

  6. #6
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    linq to entity pose les mêmes problemes

    par contre il y a des solution comme en utilisant des serialiseur qui verifie les cycles dans les graphe d objet ou mettre certaines propriété des entité en internal ou encore mettre la serialisation a unidirectionnal

  7. #7
    Membre éclairé Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Par défaut
    Citation Envoyé par anthyme Voir le message
    linq to entity pose les mêmes problemes

    par contre il y a des solution comme en utilisant des serialiseur qui verifie les cycles dans les graphe d objet ou mettre certaines propriété des entité en internal ou encore mettre la serialisation a unidirectionnal
    A bon? j'ai pourtant lu que linq to entity proposait une sérialization des graphes par défaut

    http://realworldsa.dotnetdevelopersjournal.com/

Discussions similaires

  1. [Débutant] WCF Compatible Ajax : Problème de cache ?
    Par StringBuilder dans le forum Services Web
    Réponses: 1
    Dernier message: 24/07/2014, 17h54
  2. [DEBUTANT]WCF avec IIS problème de port
    Par bibeuz dans le forum Services Web
    Réponses: 4
    Dernier message: 15/07/2013, 17h18
  3. WCF et WMI : problème lors de la mise en ligne
    Par tom741 dans le forum Windows Communication Foundation
    Réponses: 3
    Dernier message: 13/09/2010, 12h28
  4. [XML] Problème d'entité externe dans mon XSLT
    Par fragmonster dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 13/04/2007, 14h55
  5. [Debutant] Bean entité BMP - problème JNDI
    Par Tanahjampea dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 17/01/2006, 09h00

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