【发布时间】:2010-04-04 11:14:44
【问题描述】:
我正在开发一个非常简单的网页 (MVC2),使用基于资源文件的本地化。
我在单独的程序集中有 MVC2 项目和资源。
资源包含 3 种语言 (Resource.resx, Resource.de.resx, Resource.en.resx, Resource.ja.resx),我通过 ResourceManager 查询它们。
从 .aspx 页面调用:
<% Resources.Res resman = new Resources.Res(); %>
<%=resman.GetString("String1", new System.Globalization.CultureInfo("en")) %><br />
<%=resman.GetString("String1", new System.Globalization.CultureInfo("ja")) %><br />
<%=resman.GetString("String1", new System.Globalization.CultureInfo("de")) %><br />
ResourceManager:
public class Res
{
private readonly ResourceManager Manager = Resources.Resource1.ResourceManager;
public string GetString(string id, CultureInfo info)
{
return Manager.GetString(id, info);
}
}
在 VS2008 中编译后的版本是这样的:
String1EN
String1JA
String1DE
在 Visual Studio 2008 中编译,这工作正常,但如果我在 Visual Studio 2010(也是 3.5 作为 TargetFramework)中编译解决方案,我会遇到麻烦。
结果显示如下:
String1DEFAULT
String1JA
String1DEFAULT
我不知道它可能是什么:这仍然是 VS2010 RC 的错误还是我在这里做错了什么?
更新: 我发现它适用于 IIS 7.5,但不适用于 IIS 7.0。不幸的是,它不是我的解决方案。
【问题讨论】:
-
@josh - 修正了这个速记。
标签: .net visual-studio-2008 visual-studio-2010 asp.net-mvc-2 localization