Trouvé cet article sur la sérialisation et cela fonctionne très bien!
http://www.vbdotnetheaven.com/UploadFile/Nimusoft/Serialization105022008052559AM/Serialization1.aspx
modifier: que je devrais probablement poster plus. J'ai un IOwner de classe, et la liste de cette classe contient toute ma base de données. Donc, j'ai ajouté des balises de sérialisation à cette classe et d'autres auxquels il fait référence substituer ensuite dans ces propriétés avec celles indiquées sur l'article:
Imports System.Runtime.Serialization
Imports System.Runtime.Serialization.Formatters.Binary
Imports System.IO
Namespace BinarySerialization
<Serializable()> _
Public Class IFile
Implements ISerializable
Public Contacts As List(Of IOwner)
Public Self As IOwner
Public Cars As List(Of Vehicle)
Public path As String
Public Sub New()
End Sub
Public Sub New(ByVal info As SerializationInfo, ByVal context As StreamingContext)
Data.Self = info.GetValue("Self", GetType(IOwner))
Data.Contacts = info.GetValue("Contacts", GetType(List(Of IOwner)))
Data.Cars = info.GetValue("Cars", GetType(List(Of Vehicle)))
End Sub
Public Sub WriteFile()
Dim s As New FileStream(path, FileMode.Create, FileAccess.ReadWrite)
Dim B As New BinaryFormatter()
B.Serialize(s, Me)
s.Close()
End Sub
Public Function ReadFile() As IFile
Dim Fs As New FileStream(path, FileMode.Open, FileAccess.Read)
Dim F As New BinaryFormatter()
Dim s1 As IFile = DirectCast(F.Deserialize(Fs), IFile)
Fs.Close()
Return s1
End Function
#Region "ISerializable Members"
Public Sub GetObjectData(ByVal info As SerializationInfo, ByVal context As StreamingContext) Implements ISerializable.GetObjectData
info.AddValue("Self", Data.Self)
info.AddValue("Contacts", Data.Contacts)
info.AddValue("Cars", Data.Cars)
End Sub
#End Region
End Class
End Namespace
MISE À JOUR 2016
sérialisation binaire est pas recommandé pour les structures complexes qui sont sous réserve de modifications. L'utilisation d'une méthode de stockage de base de données telle que SQLite
et l'utilisation d'un ODB (modèle de base de données d'objets) aurait été préférable.
Vous posez une question ici? – Oded
Oui ... comment puis-je lui dire quoi faire quand un fichier est ouvert, et comment puis-je faire pour réduire les données dans un fichier efficace ... peut-être si j'élabore ... Je me rends compte que je n'ai pas dit certaines choses que je voulais dire: Je ne sais rien à propos de SQL bien qu'il soit généralement recommandé, et puis-je stocker un objet dans un champ de données SQL par opposition à une chaîne? – Assimilater
Les gars Je suis désolé de l'ambiguïté de cette question ... Je ne savais pas comment mieux le mettre ... en partie parce que je cherchais à utiliser la "sérialisation binaire" avant de savoir ce que le terme était .. – Assimilater