private void AttributeToXml(Attribute attribute) { if (!attribute.HasChanged) { return; } if (attribute.Definition.AttributeType == AttributeType.Relation) { _writer.WriteStartElement(RelationElement); _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name); RelationAttributeToXml(attribute); _writer.WriteEndElement(); } else if (attribute.Definition.IsMultiValue) { _writer.WriteStartElement(AttributeElement); _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name); MultiValueAttributeToXml(attribute); _writer.WriteEndElement(); } else { var content = ValueToXmlString(attribute.Definition, attribute.Value); _writer.WriteStartElement(AttributeElement); _writer.WriteAttributeString(NameAttribute, attribute.Definition.Name); if (attribute.HasChanged) { _writer.WriteAttributeString(Act, ActSet); } _writer.WriteString(content); _writer.WriteEndElement(); } }
private void MultiValueAttributeToXml(Attribute attribute) { if (!attribute.HasChanged || !attribute.Definition.IsMultiValue) { return; } WriteMultiValueAttributeValues(attribute.AddedValues, ActAdd); WriteMultiValueAttributeValues(attribute.RemovedValues, ActRemove); }
private void RelationAttributeToXml(Attribute attribute) { if (attribute.HasChanged && attribute.Definition.IsMultiValue) { WriteAttributeValues(attribute.AddedValues, ActAdd); WriteAttributeValues(attribute.RemovedValues, ActRemove); } else { if (attribute.HasChanged) { _writer.WriteAttributeString(Act, ActSet); } WriteAttributeValues(attribute.Values, null); } }
private void RelationAttributeToXml(Attribute attribute) { if (attribute.HasChanged && attribute.Definition.IsMultiValue) { WriteAttributeValues(attribute.AddedValues, "add"); WriteAttributeValues(attribute.RemovedValues, "remove"); } else { if (attribute.HasChanged) { writer.WriteAttributeString("act", "set"); } WriteAttributeValues(attribute.Values, null); } }
private void AttributeToXml(Attribute attribute) { if (changesOnly && !attribute.HasChanged) { return; } if (attribute.Definition.AttributeType == AttributeType.Relation) { writer.WriteStartElement("Relation"); writer.WriteAttributeString("name", attribute.Definition.Name); RelationAttributeToXml(attribute); writer.WriteEndElement(); } else if (attribute.Definition.IsMultiValue) { writer.WriteStartElement("Attribute"); writer.WriteAttributeString("name", attribute.Definition.Name); ValuesToXml(attribute.Definition, attribute.Values, "Value"); writer.WriteEndElement(); } else { var content = ValueToXmlString(attribute.Definition, attribute.Value); writer.WriteStartElement("Attribute"); writer.WriteAttributeString("name", attribute.Definition.Name); if (attribute.HasChanged) { writer.WriteAttributeString("act", "set"); } writer.WriteString(content); writer.WriteEndElement(); } }
public void WriteAttribute(Attribute attrib) { AttributeToXml(attrib); }
private void WriteAttributeReference(Attribute attrib) { AttributeToXml(attrib); }