private void LoadAnotherDomains(XElement root) { AnotherDomains = new List <AnotherDomainInfo>(); foreach (XElement element in root.Elements("AnotherDomain")) { var name = XmlParseHelper.ParseAttribute <string>(element, "name"); var link = XmlParseHelper.ParseAttribute <string>(element, "link"); var flag = XmlParseHelper.ParseAttribute <string>(element, "flag"); var anotherDomain = new AnotherDomainInfo(name, link, flag); foreach (XElement pageElement in element.Elements("Page")) { var pageSectionId = XmlParseHelper.ParseAttribute <SectionId>(pageElement, "sectionId"); var pageUrl = XmlParseHelper.ParseAttribute <string>(pageElement, "url"); var pageTitle = XmlParseHelper.ParseAttribute <string>(pageElement, "title"); anotherDomain.AddPage(pageSectionId, pageUrl, pageTitle); } if (anotherDomain.IsValid() && !string.Equals(link, DomainWithProtocol, StringComparison.InvariantCultureIgnoreCase)) { AnotherDomains.Add(anotherDomain); } } }
public void Load(XElement patternsElement) { _sectionsTemplates.Clear(); foreach (XElement sectionElement in patternsElement.Elements("Section")) { var sectionId = XmlParseHelper.ParseAttribute <SectionId>(sectionElement, "Id"); var pageId = XmlParseHelper.ParseAttribute <PageId>(sectionElement, "PageId"); TemplateSection templateSection = GetOrAddSection(sectionId); Dictionary <TemplateId, string> templates = XmlParseHelper.GetDictionary <TemplateId, string>(sectionElement, "Template"); foreach (var template in templates) { templateSection.Set(pageId, template.Key, template.Value); } } }