Class Static XML???

Résolu
Signaler
Messages postés
31
Date d'inscription
mercredi 17 octobre 2007
Statut
Membre
Dernière intervention
16 mars 2009
-
Messages postés
31
Date d'inscription
mercredi 17 octobre 2007
Statut
Membre
Dernière intervention
16 mars 2009
-
Bonjour à tous, je me lance dans la programmation orientée objet...
Je souhaiterais faire une classe statique càd non instanciable pour faire de ma classe une classe style passerelle.
Or Static n'existe pas en vb.net j'utilise donc shared.
Mais toutefois je voudrais que l'on me donne son avis sur ma synthaxe pour savoir si elle est cohérente d'un point de vue objet en m'expliquant ce que je n'aurais pas compris (Je compte présenter ce code à un PTI BTS). Je vous remercie d'avance voici le code:

Option Strict On
Option Explicit On

Imports System.Xml.linq

Public Class C_Xml 'Static n'existe pas
Private Shared _Path as String 'avec _Path le chemin du fichier xml
Private Shared _XmlDoc as XDocument

Shared Sub New()
_Path = Application.StartupPath & "\Filtre.xml"
End Sub

Public Shared Sub CreationXml()
_XmlDoc = _
<?xml version="1.0" encoding="utf-8"?>
<filtre>
</filtre>
End Sub

Public Shared Sub AjoutRepertoire(ByVal R as C_Repertoire)
Dim _XmlElement as XElement
_XmlElement = _XmlDoc.Element("filtre")
_XmlElement.Add(New XElement("repertoire", New XAttribute("niveau", R.get_Level), R.get_Path))
End Sub

Public Shared Sub EcritureXml()
_XmlDoc.Save(_Path)
End Sub

Public Shared Function LectureXml() as List(Of C_Repertoire)
Dim ListRep as New List(Of C_Repertoire)
_XmlDoc = XDocument.Load(_Path)
For Each X As XElement in _XmlDoc.Elements
If X.Name = "repertoire" Then
Dim R as New C_Repertoire(X.Value, Cint(X.Attribute("niveau")))
ListeRep.add(R)
End If
Next
Return ListRep
End Function

End Class




Ma question repose plus sur le Shared et les attributs Shared... Merci

2 réponses

Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
36
Salut,

Pourquoi vouloir une classe statique, fais une classe en te basant sur le design pattern singleton.

singleton : une seule instance de la classe dans le programme

classe statitque : plusieurs instances manipulant les mêmes paramêtres

http://msdn.microsoft.com/fr-fr/library/79b3xss3(VS.80).aspx
Messages postés
31
Date d'inscription
mercredi 17 octobre 2007
Statut
Membre
Dernière intervention
16 mars 2009

Merci a toi