protected override ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents)
        {
            ResourceSet rs = base.InternalGetResourceSet(culture, false, false);

            if (rs == null && createIfNotExists)
            {
                var resourceSets = ResourceSetsAccessor(this);

                lock (resourceSets)
                {
                    if (!resourceSets.TryGetValue(culture.Name, out rs))
                    {
                        var provider       = CreateResourceDataProvider();
                        var neutralCulture = NeutralCultureAccessor(this);

                        if (provider != null)
                        {
                            rs = new ResourceProviderSet(provider, base.BaseName, (culture == CultureInfo.InvariantCulture) ? neutralCulture : culture);
                            resourceSets.Add((neutralCulture == culture) ? CultureInfo.InvariantCulture.Name : culture.Name, rs);
                        }
                    }
                }
            }
            return(rs);
        }
        protected override ResourceSet InternalGetResourceSet(CultureInfo culture, bool createIfNotExists, bool tryParents)
        {
            ResourceSet rs = base.InternalGetResourceSet(culture, false, false);

            if (rs == null)
            {
                if (culture == CultureInfo.InvariantCulture)
                {
                    culture = delegateNeutralResourcesCulture(this);
                }

#pragma warning disable CS0618 // Type or member is obsolete
                rs = ResourceSets[culture.Name] as ResourceSet;
#pragma warning restore CS0618 // Type or member is obsolete

                if (rs == null && createIfNotExists)
                {
                    var provider = CreateResourceDataProvider();

                    if (provider != null)
                    {
                        rs = new ResourceProviderSet(provider, base.BaseName, culture);
#pragma warning disable CS0618 // Type or member is obsolete
                        ResourceSets.Add(culture.Name, rs);
#pragma warning restore CS0618 // Type or member is obsolete
                    }
                }
            }
            return(rs);
        }