我应该在哪里将resources.resx放在ASP.NET Web应用程序中?

时间:2012-01-17 09:01:58

标签: asp.net embedded-resource

我是ASP.NET Web应用程序的新手。当我创建一个ASP.NET Web应用程序项目时,在My Project文件夹中有一个名为resources.resx的文件。在我的计算机上工作,我可以毫无问题地访问此文件及其内容。但是当我部署应用程序时,我无法访问此文件。我已经尝试单独复制文件,并单独复制文件夹(My Project),其中包含文件,但没有运气。有没有办法实现这个目标?

PS:我已经阅读了关于隐式本地化和显式本地化的内容,但我想知道是否可以这样做。

2 个答案:

答案 0 :(得分:1)

在构建(编译)时,它嵌入到DLL中。所以在部署时你无法改变它。

如果您想在DLL中看到它,则必须使用ReflectordotPeek等工具。

您可以阅读有关资源here的更多信息,从“将资源编译为程序集”标题开始(您知道现在如何使用它们)。

答案 1 :(得分:0)

我的建议是使用全球和本地资源。 在生产中,您将resx文件存储在:

  • App_GlobalResources:适用于所有应用程序
  • App_LocalResources:您想要资源的每个文件夹一个。

它们是可浏览和可编辑的XML文件。

我用它来允许我修改字符串本地化资源而无需重新编译和部署。 您还可以为最终用户提供Web界面,以允许他在运行时自行翻译和本地化字符串。