【发布时间】:2016-04-14 18:22:27
【问题描述】:
我必须访问弱类型的资源文件,这意味着我必须通过 ResourceManager 传递完整的命名空间 + 文件名来加载/访问资源。
var rm = new ResourceManager("namespace.name.locale.brand", Assembly.GetExecutingAssembly());
我通过“myImage”以非重构安全方法访问我的资源图像。
string imageUrl = rm.GetString("myImage");
想象一下,我有许多具有不同语言环境/品牌名称的 .resx 文件。它们都有不同的图像,但它们具有相同的键。因此我无法访问那些静态类型的资源,因为我只知道运行时正确的资源。
但我希望有一种将 nameof 运算符和资源管理器实例结合起来的棘手方法。
有谁知道这个棘手的方法?
请不要建议以静态类型的方式访问任何这些 .resx 文件,并将带有 nameof 的密钥传递给上述 .GetString() 方法。
如果没有使用 nameof 运算符的解决方案,那么欢迎使用任何工具 ;-)
【问题讨论】:
标签: c# embedded-resource c#-6.0 nameof