如果执行 ResourceManager.GetString(Key),则可以获得资源中项目的值。有没有办法进行反向查找以从给定值的资源中获取密钥(本质上是反翻译)?
您应该能够获取 ResourceSet 并迭代它的值,如果它们相等则返回键。请记住,您需要比较值,而不是参考。类似的东西(未编译和测试,但类似)
System.Resources.ResourceManager rm =
new System.Resources.ResourceManager("MyAssembly.MyResources",
System.Reflection.Assembly.GetExecutingAssembly());
System.Resources.ResourceSet rs =
rm.GetResourceSet(System.Globalization.CultureInfo.CurrentCulture,
false, false);
System.Collections.IDictionaryEnumerator ide = rs.GetEnumerator();
while(ide.MoveNext())
{
if (ide.Value == val)
return ide.Key;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)