我有.resx文件的应用程序。 Resx文件是简单的XML,但是在将资源保存到汇编之后。所以要更改资源,我需要重建我的资源程序集。有没有办法直接从resx文件中使用资源?
答案 0 :(得分:5)
如果您使用ResourceManager
类来访问资源,则可以使用resgen
将.resx
文件编译为.resources
文件。然后,您可以使用ResourceManager
而不是ResourceManager.CreateFileBasedResourceManager
创建new ResourceManager(...)
课程的新实例。这允许您指定资源文件名和要在其中搜索的目录。
例如,请查看approach B in this tutorial。
答案 1 :(得分:4)
正如mdm所提到但未明确写了否,如果没有编译或没有ResourceManager.CreateFileBasedResourceManager
,你就无法做到。
资源在.resx部分中有一个XML结构,但这部分只是向编译器显示了应该包含哪些文件的位置,它只存在于项目中,而不是在构建之后。
资源文件被定义为嵌入式资源,意味着它嵌套在程序集中。任何更改都将导致需要新的编译。