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 Discussion :

Comment Serialiser un objet Interop?


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Par défaut Comment Serialiser un objet Interop?
    Salut,

    Je tente de serialiser une classe Interop écrite en vb6 et utilisée normalement en methode et propriétés dans le projet. Mais lors de la serialisation vers XML j'obtiens une message d'erreur sur l'instruction suivante :


    Dim serializer As New XmlSerializer(ObjUser.GetType)


    Impossible de générer une classe temporaire (result=1).
    error CS1545: La propriété, l'indexeur ou l'événement 'LibelleSelection' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_LibelleSelection()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_LibelleSelection(ref string)'
    error CS1545: La propriété, l'indexeur ou l'événement 'SelectionPartagee' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_SelectionPartagee()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_SelectionPartagee(ref bool)'
    error CS1545: La propriété, l'indexeur ou l'événement 'SelectionCommentaire' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_SelectionCommentaire()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_SelectionCommentaire(ref string)'
    error CS1545: La propriété, l'indexeur ou l'événement 'ModeRepresentation' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_ModeRepresentation()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_ModeRepresentation(ref short)'
    error CS1545: La propriété, l'indexeur ou l'événement 'IdGraphe' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_IdGraphe()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_IdGraphe(ref short)'
    error CS1545: La propriété, l'indexeur ou l'événement 'NbVirgule' n'est pas pris en charge par le langage ; essayez d'appeler directement les méthodes d'accesseur 'SiteEntrepriseMaClasse.MaClasseClass.get_NbVirgule()' ou 'SiteEntrepriseMaClasse.MaClasseClass.set_NbVirgule(ref short)'



    Le code de serialisation :

    Function SerializeMaClasse(ByVal MaClasse As SiteEntrepriseMaClasse.MaClasse) As Boolean

    If MaClasse Is Nothing Then Return False
    Dim MaClasseXML As New Object
    MaClasseXML = MaClasse.Clone
    Dim serializer As XmlSerializer = New XmlSerializer(MaClasseXML.GetType)
    Dim stream As StreamWriter = New StreamWriter("TheRequete.xml")
    serializer.GetType()
    serializer.Serialize(stream, MaClasse)
    stream.Close()


    Return True


    End Function


    La DLL contenant l'objet à serialiser est déclarée dans le projet en Interop.SiteEntrepriseMaClasse.Dll

    et fonctionne très bien avec le reste du code du projet.

    Merci de vos lumières.

  2. #2
    Membre Expert Avatar de LooserBoy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    1 085
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 1 085
    Par défaut
    Tu vas être obligé de gérer toi-même la sérialisation.
    Les objets non .NET ne sont pas sérialisables par un XmlSerializer standard.

  3. #3
    Membre à l'essai
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Par défaut
    Citation Envoyé par LooserBoy Voir le message
    Tu vas être obligé de gérer toi-même la sérialisation.
    Les objets non .NET ne sont pas sérialisables par un XmlSerializer standard.
    En gros cela signifie que je vais devoir parcourir toutes les propriétés de l'objet et de générer moi-même les tag du fichier XML!?

    As-tu lu ou vu des exemples de serialisation d'objets externes à .net stp.

    merci.

  4. #4
    Membre Expert Avatar de LooserBoy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    1 085
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 1 085
    Par défaut
    Citation Envoyé par Buddha Voir le message
    En gros cela signifie que je vais devoir parcourir toutes les propriétés de l'objet et de générer moi-même les tag du fichier XML!?
    Et oui, pas de repos pour les braves...
    Citation Envoyé par Buddha Voir le message
    As-tu lu ou vu des exemples de serialisation d'objets externes à .net stp.

    merci.
    Non désolé et de rien.

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Buddha Voir le message
    En gros cela signifie que je vais devoir parcourir toutes les propriétés de l'objet et de générer moi-même les tag du fichier XML!?
    Oui, enfin, le plus simple est de réécrire un XmLSerializer générique mais capable de travailler sur des objets Interop. (peut on utiliser la Reflection sur les objets interop, je n'en sais rien ?)

  6. #6
    Membre à l'essai
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Par défaut Reflexion Interop
    Citation Envoyé par Bluedeep Voir le message
    Oui, enfin, le plus simple est de réécrire un XmLSerializer générique mais capable de travailler sur des objets Interop. (peut on utiliser la Reflection sur les objets interop, je n'en sais rien ?)


    On doit pouvoir puisque lorsque je tape monobjinterop. ... il m'ouvre une fenêtre avec les propriétés et méthodes de l'objet!

    Mais que veux tu dire par réécrire un xmlserializer?

Discussions similaires

  1. comment serialiser un objet java?
    Par m3allem001 dans le forum Langage
    Réponses: 5
    Dernier message: 07/04/2009, 10h59
  2. Réponses: 3
    Dernier message: 07/01/2007, 16h48
  3. [servlet][bean]comment récupérer l'objet request
    Par otminou dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 27/09/2004, 14h40
  4. [VB6]Sérialiser un objet
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 11/10/2003, 10h05
  5. Comment mettre plusieurs objets ds un composant ?
    Par Fleury dans le forum Composants VCL
    Réponses: 7
    Dernier message: 24/05/2003, 17h34

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