private static EmailTemplate GetEmailTemplate(string templateName, IConfig config) { var src = new StringResourcesCache(); var ch = config[CommonConfiguration.DefaultStorageConnection]; if (ch.StartsWith("~") && HttpContext.Current != null) { ch = HttpContext.Current.Server.MapPath(ch); } var templates = Catalog.Preconfigure().Add(BlobContainerLocalConfig.ContainerHost, ch).Add( BlobContainerLocalConfig.ContainerName, EmailTemplate.Container).Add( BlobContainerLocalConfig.OptionalAccess, EntityAccess.Private).ConfiguredResolve <IBlobContainer <EmailTemplate> >(); var jsonFile = templateName + ".json"; var template = src.ResourceNames.Contains(jsonFile) ? JsonConvert.DeserializeObject <EmailTemplate>(src[jsonFile]) : templates.Get(templateName); return(template); }
public JsonConfiguration(StringResourcesCache src) { foreach (var file in src.ResourceNames.Where(rn => rn.EndsWith(".json"))) { _jsonContent = src[file]; var moreValues = JsonConvert.DeserializeObject <Dictionary <string, string> >(_jsonContent); foreach (var k in moreValues.Keys) { _values.Add(k, moreValues[k]); } } }