我在全球化方面遇到了一些问题。我在ASP.NET 2.0中继承了一个非常古老的项目。它有多种语言的全球化文件。App_GlobalResources全球化
但是,当我构建用于部署的应用程序时,它在我们的测试环境中运行良好。但是,当我们将应用程序复制到生产环境时,它在出错时出错了:Global,MyStringHere%>。
声明在资源文件中找不到MyStringHere。
为什么在开发和测试环境中运行良好,但在生产环境中运行得不好?从一个环境到下一个环境文件是完全一样的(尽管inetpub文件位于每台机器的不同目录中)。
任何人有任何想法?
编辑:
很奇怪。如果我从后面的代码调用资源。
public string _MyStringName = Resources.Global.MyStringHere;
这适用于所有环境。
但是,使用旧:
<%$Resources: Global, MyStringHere %>
在生产中仅示数出来。
否#DEBUG。这很奇怪为什么它这样做。资源文件多年来一直没有改变,唯一改变的就是App_GlobalResources.compiled文件。散列/ filehash/resHash文件已更改。 – Sean 2012-03-05 23:37:16
当您对“MyStringHere”进行解决方案搜索时,会发生什么......您是否看到它在资源文件中定义? – Zeus 2012-03-06 00:00:20
是的。它被定义 - 它在开发时甚至在开发机器上的释放模式下运行得非常好。 – Sean 2012-03-06 00:20:18