OVH Cloud OVH Cloud

[REPOST] sérialisation XML

2 réponses
Avatar
Bismark Prods
Bonjour, Bonsoir,

Je crée une classe qui hérite de SortedList. J'applique quelques fonctions
supplémentaires, dont 2 fonctions partagées : Deserialize et Serialize.

Toutefois je ne réussi pas à Désérialiser une classe sur elle-même. Dans le
constructeur je souhaite pouvoir fournir un chemin de fichier et ainsi à la
construction de la classe, désérialiser et obtenir une classe déjà
existante.

Avez-vous une solution à part de passer par un objet privé et recopier tous
les membres dans une itération ?

Merci

Bismark

P.S.: l'humour n'est pas productive !

2 réponses

Avatar
Pascal Belaud [MS]
Salut Bismark,

Généralement, on fait cela en passant par une fonction statique (Shared) sur
la classe. Du style:

Public Class MaClasse

Public Shared Function Deserialize(ByVal fileName As String) As MaClasse

...

End Function

End Class

Puis après à l'utilisation:
Dim maClasseA As Classe = Classe.Deserialize("C:...toto.xml")


Je ne penses que tu puisses faire cela dans le constructeur car c'est trop
tard, la classe (vierge) a déjà été créée.

A+

--
Pascal Belaud - Microsoft France
OlyMars: SQL Server Centric .NET Code Generator

http://www.microsoft.com/france/msdn/olymars
http://www.olymars.net/latest.zip (interim build)
http://blogs.msdn.com/olymars
"Bismark Prods" <xanaia#nospam#@urbanet.ch> wrote in message
news:
Bonjour, Bonsoir,

Je crée une classe qui hérite de SortedList. J'applique quelques fonctions
supplémentaires, dont 2 fonctions partagées : Deserialize et Serialize.

Toutefois je ne réussi pas à Désérialiser une classe sur elle-même. Dans
le
constructeur je souhaite pouvoir fournir un chemin de fichier et ainsi à
la
construction de la classe, désérialiser et obtenir une classe déjà
existante.

Avez-vous une solution à part de passer par un objet privé et recopier
tous
les membres dans une itération ?

Merci

Bismark

P.S.: l'humour n'est pas productive !





Avatar
Bismark Prods
Hello,

Nous sommes bien d'accord qu'une variable associée à une classe est un
pointeur vers ce type d'objet. Or il doit être possible de modifier
l'emplacement vers lequel pointe ledit pointeur ... meme en VB

Il devrait être possible de copier le pointeur dans une variable auxiliaire
(copie par référence) et d'instruire cette référence sur le retour de ladite
fonction partagée ?

Suis-je sur le bon chemin ?