Hallo,
ich habe folgendes Problem. Ich habe ein Objekt mit Hilfe der Serialize/Deserialize geklont um ein vollständiges Abbild zu bekommen.
Solange das geklonte Objekt klein ist funktioniert diese Funktion - wird das zu klonende Objekt größer so meldet das System mir einen "Out of Memory" Fehler.
Das Problem ist, ich weiß nicht wie groß das Objekt wird und wie ich diesen Fehler umgehen kann. Gibt es evtl. noch eine andere Möglichkeit?
Hier der Beispiel Code:
Public Function Clone(ByVal Obj As Object) As Object
Dim m As New IO.MemoryStream()
Dim b As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
Try
b.Serialize(m, Obj)
m.Position = 0
Return b.Deserialize(m)
Catch
With Err()
MsgBox(.Description & " " & .Source.ToString, MsgBoxStyle.OkOnly)
End With
Return Nothing
End Try
End Function
Ich wäre froh, wenn mir irgendjmd. bei dem Problem helfen könnte, da ich noch nicht so viel Ahnung von VB.Net habe.
Danke
ich habe folgendes Problem. Ich habe ein Objekt mit Hilfe der Serialize/Deserialize geklont um ein vollständiges Abbild zu bekommen.
Solange das geklonte Objekt klein ist funktioniert diese Funktion - wird das zu klonende Objekt größer so meldet das System mir einen "Out of Memory" Fehler.
Das Problem ist, ich weiß nicht wie groß das Objekt wird und wie ich diesen Fehler umgehen kann. Gibt es evtl. noch eine andere Möglichkeit?
Hier der Beispiel Code:
Public Function Clone(ByVal Obj As Object) As Object
Dim m As New IO.MemoryStream()
Dim b As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
Try
b.Serialize(m, Obj)
m.Position = 0
Return b.Deserialize(m)
Catch
With Err()
MsgBox(.Description & " " & .Source.ToString, MsgBoxStyle.OkOnly)
End With
Return Nothing
End Try
End Function
Ich wäre froh, wenn mir irgendjmd. bei dem Problem helfen könnte, da ich noch nicht so viel Ahnung von VB.Net habe.
Danke