C#/ .Net:设置ResXResourceReader的basepath有哪些最佳实践?

时间:2010-04-12 22:48:00

标签: c# visual-studio resources

我正在使用C#/ .Net中的Windows窗体应用程序。我想使用包含我的字符串翻译的资源文件。我在visual studio中的项目我有以下层次结构:

      
  • 项目
  •   
          
    • CS档案......
    •     
    • 资源\
    •     
              
      • resource.en-US.resx
      •     
        

我正在尝试读取资源文件,如下所示:

m_ResourceReader = new ResXResourceReader("resources/resource.en-US.resx");

当我运行这个项目时,Visual Studio似乎在我的项目的bin / Debug输出文件夹中查找resources文件夹。

我的问题是:

  • 引用资源文件的正确方法是什么?
  • 我希望我的安装程序将此资源文件放在Program Files \ MyApp \ resources \ resource.en-US.resx下的应用程序文件夹下。什么是让ResXResourceReader从该位置读取它的方法。

感谢您的帮助。

-Raj

1 个答案:

答案 0 :(得分:1)

没有正确的方法在运行时引用.resx文件。它们是设计时文件,构建系统将它们转换为附属程序集。并将生成的DLL复制到bin \ Debug文件夹的en-US文件夹中。如果当前文化设置为en-US,运行时会自动查找并使用它们。

我想你可以让.resx读取,但你不会得到IDE或构建系统的帮助。我不得不建议你避免对抗机器。