/// <summary>Call with typeof(Properties.Resources)</summary> /// <param name="resourcesType">typeof(Properties.Resources)</param> /// <returns>A resource manager</returns> internal static ResourceManager ForType(Type resourcesType) { var resourceManager = TypeManagerCache.GetOrAdd(resourcesType, CreateManagerForType); if (resourceManager == null) { var message = $"{nameof(resourcesType)} must have a property named ResourceManager of type ResourceManager"; throw new ArgumentException(message); } return(resourceManager); }
/// <summary>Tries to get from cache or create a <see cref="ResourceManager"/> for <paramref name="resourcesType"/> </summary> /// <param name="resourcesType">Ex. typeof(Properties.Resources)</param> /// <param name="result">The <see cref="ResourceManager"/></param> /// <returns>True if a <see cref="ResourceManager"/> could be created for <paramref name="resourcesType"/></returns> internal static bool TryGetForType(Type resourcesType, out ResourceManager result) { result = TypeManagerCache.GetOrAdd(resourcesType, CreateManagerForTypeOrDefault); return(result != null); }
/// <summary>Tries to get from cache or create a <see cref="ResourceManager"/> for <paramref name="resourcesType"/>. </summary> /// <param name="resourcesType">Ex. typeof(Properties.Resources).</param> /// <param name="result">The <see cref="ResourceManager"/>.</param> /// <returns>True if a <see cref="ResourceManager"/> could be created for <paramref name="resourcesType"/>.</returns> internal static bool TryGetForType(Type resourcesType, [NotNullWhen(true)] out ResourceManager?result) { result = TypeManagerCache.GetOrAdd(resourcesType, x => CreateManagerForTypeOrDefault(x)); return(result != null); }