I want key Name based on value. My resource code below
<data name="FoodTruck" xml:space="preserve"><value>Food truck</value></data>
I have value Food truck now I want Key name FoodTruck.
I am using Xamarin C#.
I want key Name based on value. My resource code below
<data name="FoodTruck" xml:space="preserve"><value>Food truck</value></data>
I have value Food truck now I want Key name FoodTruck.
I am using Xamarin C#.
 
    
    Try it code:
System.Resources.ResourceManager rm = typeof(AppResources)
            .GetRuntimeFields()
            .First(m => m.Name == "resourceMan")
            .GetValue(typeof(AppResources)) as System.Resources.ResourceManager;
//or this variant
var rm = new System.Resources.ResourceManager(typeof(AppResources));
//CultureInfo culture 
ResourceSet rs = rm.GetResourceSet(culture, true, false); 
var nameItem = rs.OfType<DictionaryEntry>().FirstOrDefault(i => i.Value == "YourValue"); 
var name = nameItem.Key.ToString();
use it in platform specific projects (Xamarin.Droid or Xamarin.iOS)
Example:
in PCL projects:
public interface IGetName
{
    string GetName (string value);
}
in Android project:
[assembly: Dependency(typeof(AppGetName ))]
namespace YourNamespace 
 ....
 public class AppGetName : IGetName
   {
       public string GetName (string value)
       {
             System.Resources.ResourceManager rm = typeof(AppResources)
                .GetRuntimeFields()
                .First(m => m.Name == "resourceMan")
                .GetValue(typeof(AppResources)) as 
      System.Resources.ResourceManager;
    //CultureInfo culture 
    ResourceSet rs = rm.GetResourceSet(culture, true, false); 
    var nameItem = rs.OfType<DictionaryEntry>().FirstOrDefault(i => i.Value == "YourValue"); 
    var name = nameItem.Key.ToString();
    return name;
       }
   }
using in PCL projects:
var getName = DependencyService.Get<IAppGetName>();
var name = getName.GetName("YourValue");
