Dear experts,
I have a subclass ContainerWithParametersNode of class SimpleContainerNode, which is a subclass of GoSubGraph.
If i use the following code, in the created xmlDoc are duplicate entries (XmlElements) for the ContainerWithParametersNode objects.
If i remove the blue code, there are no longer duplicate entries.
What is (could be) the reason?
Kind regards,
Juergen Jaeger
public XmlDocument ModelToXmlDocument(IMoBiSpaceDiagramModel diagramModel)
{
GoXmlWriter writer = new GoXmlWriter();
RegisterTransformers(writer);
writer.Objects = (SpaceDiagramModel)diagramModel;
var xmlDoc = writer.Generate();
return xmlDoc;
}
private void RegisterTransformers(GoXmlReaderWriterBase rw)
{
GoXmlBindingTransformer bt;
SpaceDiagramModel spaceDiagramModel = new SpaceDiagramModel();
bt = new GoXmlBindingTransformer(ElementName, spaceDiagramModel);
bt.AddBinding("ParametersVisible");
rw.AddTransformer(bt);
bt = new GoXmlBindingTransformer(new SimpleNeighborhoodNode());
addNeighborhoodNodeBindings(bt);
rw.AddTransformer(bt);
<font color="#0000ff"> bt = new GoXmlBindingTransformer(new SimpleContainerNode());
addContainerBaseNodeBindings(bt);
rw.AddTransformer(bt);
bt = new GoXmlBindingTransformer(new ContainerWithParametersNode());
addContainerBaseNodeBindings(bt);
rw.AddTransformer(bt);
}
private void addContainerBaseNodeBindings(GoXmlBindingTransformer bt)
{
bt.HandlesChildren = true;
bt.HandlesChildAttributes = true;
bt.HandlesSubGraphCollapsedChildren = true;
addBaseNodeBindings(bt);
bt.AddBinding("IsLogical");
bt.AddBinding("IsExpanded");
}
=>