如何在正确的文件夹中以编程方式创建资源文件 C#

How to create a resource file programmatically in the correct folder c#

我想以编程方式创建资源文件。我在 link 之后设法做到了:https://msdn.microsoft.com/en-us/library/gg418542(v=vs.110).aspx

我得到了这个代码:

ResXResourceWriter resx = new ResXResourceWriter(@".\Resources\resources.en.resx");
        resx.Close();

它正在运行,但它想在 "C:\Program Files (x86)\IIS Express" 的 "Resources" 文件夹中创建文件。但我希望它在我的 asp.net 项目的专用 "Resources" 文件夹中创建文件,我如何相对地指向该地图?

  1. 首先在您选择的位置创建资源文件。
  2. 将文件添加到项目中。
  3. 根据 file/folder 存在的位置,VS 将对其进行相对或绝对引用

如果你想让它写到一个特定的位置,我会建议这样的东西

string resFilePath = ConfigurationManager.AppSettings["ResourceFilePath"];
ResXResourceWriter resx = new ResXResourceWriter(Path.Combine(resFilePath, "\Resources\resources.en.resx"));
resx.Close();

将基本路径放在配置中允许您在部署应用程序时更改它。

请记住,尽管代码在 运行 应用程序的上下文中运行,因此无论它以何种方式运行,都需要对资源目录的写入权限。