Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Loop through all Resources in ResourceManager - C#

Tags:

c#

resources

How do I loop into all the resources in the resourcemanager?

Ie: foreach (string resource in ResourceManager) //Do something with the recource.

Thanks

like image 440
vIceBerg Avatar asked Sep 26 '08 14:09

vIceBerg


2 Answers

Use ResourceManager.GetResourceSet() for a list of all resources for a given culture. The returned ResourceSet implements IEnumerable (you can use foreach).


To answer Nico's question: you can count the elements of an IEnumerable by casting it to the generic IEnumerable<object> and use the Enumerable.Count<T>() extension method, which is new in C# 3.5:

using System.Linq;

...

var resourceSet = resourceManager.GetResourceSet(..);
var count = resSet.Cast<object>().Count();
like image 170
VVS Avatar answered Sep 18 '22 07:09

VVS


I wonder why would you like to loop through all of the resources.

Anyway, ResourceManager needs to be instantiated giving it a Type or the base name where to lookup for resources. Then you will be able to retrieve a ResourceSet but for a given CultureInfo, ergo if you want to obtain all the resources for a given `ResourceManager

like image 45
Leandro López Avatar answered Sep 18 '22 07:09

Leandro López