Well what I have done is created a wrapper class to save multiple diagrams. I used savesoap to save a diagram to a stream and then in the wrapper class the stream is serialized as an array of bytes. Now when I updated to the recent version of syncfusion I received xml key errors when I deserialized the stream. So I created a binder like this
NotInheritable Class VersioningBinder
Inherits SerializationBinder
Public Overrides Function BindToType(ByVal assemblyName As String, ByVal typeName As String) As Type
Dim typeInfo As String() = typeName.Split(".")
Dim className As String = typeInfo(typeInfo.Length - 1)
Dim t As System.Type
Select Case className
Case "SymbolModel"
Return GetType(SymbolModel)
Case "NodeCollection"
Return GetType(NodeCollection)
Case "LayerCollection"
Return GetType(LayerCollection)
Case "Layer"
Return GetType(Layer)
Case "LabelCollection"
Return GetType(LabelCollection)
Case "FillStyle+FillType"
Return GetType(FillStyleType)
Case "BitmapNode"
Return GetType(BitmapNode)
Case "Polygon"
Return GetType(Polygon)
Case "Line"
Return GetType(Line)
Case "HandleEditMode"
Return GetType(HandleEditMode)
Case Else
Return Type.GetType(String.Format("{0},{1}", typeName, assemblyName))
End Select
End Function
This allowed me to deserialize the wrapper class. Now I am running into an exception on LoadSoap which is
"Parse Error, no type with Xml key a 1 Syncfusion.Windows.Forms.Diagram.Controls.Diagram+DiagramDoc Syncfusion.Diagram"
My diagram in soap is attached.
I am upgraded from I think vers 2 something of syncfusion diagram.
soapdiagram.zip