protected virtual IEnumerable <IOrganizationServiceCache> GetServiceCaches() { var section = CrmConfigurationManager.GetCrmSection(); var elements = section.ServiceCache.Cast <OrganizationServiceCacheElement>().ToList(); if (!elements.Any()) { yield return(CrmConfigurationManager.CreateServiceCache(null, (string)null, true)); } else { // ignore service cache objects that are nested in a composite service cache var ignored = ( from element in elements let inner = element.Parameters["innerServiceCacheName"] where !string.IsNullOrWhiteSpace(inner) select inner).ToList(); foreach (var element in elements.Where(e => !ignored.Contains(e.Name))) { var connectionId = GetConnectionId(element.Parameters); yield return(CrmConfigurationManager.CreateServiceCache(element.Name, connectionId, true)); } } }
internal static IOrganizationServiceCache GetOrganizationServiceCache() { string connectionId; var serviceCacheName = GetServiceCacheName(out connectionId); var cache = CrmConfigurationManager.CreateServiceCache(serviceCacheName, connectionId); return(cache); }
public virtual void Initialize(string name, NameValueCollection config) { if (Inner == null) { if (config != null) { var connectionId = GetConnectionId(name, config); var innerServiceCacheName = config["innerServiceCacheName"]; if (!string.IsNullOrWhiteSpace(innerServiceCacheName)) { // instantiate by config Inner = CrmConfigurationManager.CreateServiceCache(innerServiceCacheName, connectionId, true); } else { Inner = CreateDefaultServiceCache(name, connectionId, true); } } } }
private static IEnumerable <IOrganizationServiceCache> GetServiceCaches() { var section = CrmConfigurationManager.GetCrmSection(); var elements = section.ServiceCache.Cast <OrganizationServiceCacheElement>().ToList(); if (!elements.Any()) { yield return(CrmConfigurationManager.CreateServiceCache(null, (string)null, true)); } else { var ignored = elements.Select(element => new { element, inner = element.Parameters["innerServiceCacheName"] }) .Where(param0 => !string.IsNullOrWhiteSpace(param0.inner)) .Select(param0 => param0.inner) .ToList(); foreach (var serviceCacheElement in elements.Where(e => !ignored.Contains(e.Name))) { var connectionId = GetConnectionId(serviceCacheElement.Parameters); yield return(CrmConfigurationManager.CreateServiceCache(serviceCacheElement.Name, connectionId, true)); } } }
private static IOrganizationServiceCache CreateOrganizationServiceCache(string connectionId) { return(CrmConfigurationManager.CreateServiceCache(null, connectionId, true)); }