C#项目中的字符串资源

时间:2012-04-13 16:02:35

标签: c# .net

我已经使用反编译器查看了一些微软的程序集。我在每个程序集中都找到了“Resources”文件夹。他们有一些价值观。但我没有在汇编代码中找到任何这个值的引用。   你能告诉我为什么我们使用资源吗?为什么我没有在反编译代码中的任何地方找到resourcename。

enter image description here

您可以看到我选择了System.Data.Entity.Design.resources,它位于“Resources”命名文件夹下。 在程序集中使用这些名称 - 值对有什么用?这是我的问题。以及在代码中使用此名称 - 值对的位置?

1 个答案:

答案 0 :(得分:1)

资源字符串按名称加载(如ResourceManager.GetString),因此无需在源代码中查找完整的字符串名称。一些其他程序集也可以使用字符串。

即。资源:

Message_BadOne -> "Bad things happened"
Message_Cool -> "Soo cooooll"

代码:

Console.WriteLine(resourceManager.GetString(
       "Message" + (isItCool? "_Cool" : "_BadOne"));