public XmlElement ToXml(XmlDocument document)
{
const string Ns = XmlNamespaces.ProjectConfigurationNamespace;
XmlElement result = document.CreateElement("linking", Ns);
if (formats.Count != 0)
{
XmlElement linksElement = result.AppendElement(document.CreateElement("formats", Ns));
foreach (KeyValuePair<string, ExtensionString> format in formats)
{
XmlElement element = linksElement.AppendElement(document.CreateElement("format", Ns));
element.SetAttribute("name", format.Key);
if (!string.IsNullOrEmpty(format.Value.Extension))
element.SetAttribute("extension", format.Value.Extension);
element.InnerText = format.Value.Value;
}
}
if (links.Count != 0)
{
XmlElement linksElement = result.AppendElement(document.CreateElement("links", Ns));
foreach (KeyValuePair<string, ExtensionString> link in links)
{
XmlElement element = linksElement.AppendElement(document.CreateElement("link", Ns));
element.SetAttribute("name", link.Key);
if (!string.IsNullOrEmpty(link.Value.Extension))
element.SetAttribute("extension", link.Value.Extension);
element.InnerText = link.Value.Value;
}
}
return result;
}