} // constructor public static IDictionary <string, string> BuildMapping(ProviderMappingsXml providerMappings) { Dictionary <string, string> mappings; int count; var q = from package in providerMappings.Packages from mp in package.Mappings select mp; count = q.Count(); mappings = new Dictionary <string, string>(count); foreach (var mp in q) { try { mappings.Add(mp.DomainName.ToLowerInvariant(), mp.LogoFile); } catch (ArgumentException ex) // duplicated key (domain name) { throw new ApplicationException( string.Format(Properties.Texts.ExceptionLogosProviderMappingsDuplicatedDomain, mp.DomainName), ex); } // try-catch } // foreach return(mappings); } // BuildMapping
} // Get private void Init(ProviderMappingsXml providerMappings) { ProviderMappings = BuildMapping(providerMappings); BasePathLogos = providerMappings.BasePath; } // Init
} // BasePathLogos public ProviderLogoMappings(ProviderMappingsXml providerMappings) { Init(providerMappings); } // constructor