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));
                }
            }
        }
Exemplo n.º 2
0
        internal static IOrganizationServiceCache GetOrganizationServiceCache()
        {
            string connectionId;
            var    serviceCacheName = GetServiceCacheName(out connectionId);
            var    cache            = CrmConfigurationManager.CreateServiceCache(serviceCacheName, connectionId);

            return(cache);
        }
Exemplo n.º 3
0
        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);
                    }
                }
            }
        }
Exemplo n.º 4
0
        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));
                }
            }
        }
Exemplo n.º 5
0
 private static IOrganizationServiceCache CreateOrganizationServiceCache(string connectionId)
 {
     return(CrmConfigurationManager.CreateServiceCache(null, connectionId, true));
 }