我已经使用资源文件在这个 ASP.NET 项目中实现了本地化,并且按预期工作。但是在一种情况下,我必须以一种语言显示整个页面,然后根据下拉列表中的选择以其他语言显示其中的一部分。
据我所知,GetGlobalResourceObject() 和 GetLocalResourceObject() 方法适用于页面文化,但我需要以编程方式调整语言。有没有办法覆盖这些方法的行为,以便我可以指定语言?
我已经使用资源文件在这个 ASP.NET 项目中实现了本地化,并且按预期工作。但是在一种情况下,我必须以一种语言显示整个页面,然后根据下拉列表中的选择以其他语言显示其中的一部分。
据我所知,GetGlobalResourceObject() 和 GetLocalResourceObject() 方法适用于页面文化,但我需要以编程方式调整语言。有没有办法覆盖这些方法的行为,以便我可以指定语言?
我相信您可以使用此方法访问特定的 resx 文件:
value = HttpContext.GetGlobalResourceObject(classKey, resourceKey, culture)
你可以像这样初始化你的文化:
Culture culture = CultureInfo.CreateSpecificCulture("pt-PT");
只需从下拉列表中选择您的值并在 CreateSpecificCulture 方法中切换文化。
我还没有测试过,如果这不起作用,请告诉我。
编辑:它与 GetLocalResourceObject 相同