private void Serialize(XmlElement node)
{
XmlElement nameElement = node.OwnerDocument.CreateElement("Name");
nameElement.InnerText = this.Name;
node.AppendChild(nameElement);
foreach (IProjectItem item in Items)
{
XmlElement itemElement = node.OwnerDocument.CreateElement("ProjectItem");
item.Serialize(itemElement);
Type type = item.GetType();
XmlAttribute typeAttribute = node.OwnerDocument.CreateAttribute("type");
typeAttribute.InnerText = type.FullName;
itemElement.Attributes.Append(typeAttribute);
XmlAttribute assemblyAttribute = node.OwnerDocument.CreateAttribute("assembly");
assemblyAttribute.InnerText = type.Assembly.FullName;
itemElement.Attributes.Append(assemblyAttribute);
node.AppendChild(itemElement);
}
}