Mad*_*bot 5 c# asp.net-mvc multilingual cultureinfo .net-4.8
我目前正在开发一个 ASP.NET 4.8 MVC 单页应用程序,预计支持多种语言。从各种资源中,我发现实现此目的的一种方法是使用App_GlobalResources每种受支持语言的资源文件。
我在页面中添加了一些导航链接,用于更新线程的当前文化信息,从而将这些语言资源拉入我的应用程序中。
var cultureInfo = CultureInfo.GetCultures(CultureTypes.AllCultures)
.FirstOrDefault(x => x.ThreeLetterISOLanguageName == language);
if (cultureInfo == null)
cultureInfo = CultureInfo.GetCultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = cultureInfo;
Thread.CurrentThread.CurrentUICulture = cultureInfo;
Run Code Online (Sandbox Code Playgroud)
这对于有文化支持的语言来说似乎效果很好。(IE:“eng”拉回en-us并找到Content.en.resx文件,“spa”检索Content.es.resx等)但是我遇到了困难,语言出现在 ISO639-2 列表中(苗族、凯伦族)但没有关联的 CultureInfo跟他们。
我尝试过使用这些来分离文化CultureAndRegionInfoBuilder,但根据我的理解,这只能在我的计算机上运行,而不能在网络上运行。我也无法“破解”现有文化 - 即采用越南语并替换其ThreeLetterISOLanguageName和其他属性 - 因为这些属性是只读的。
当 CultureInfo 不可用时,是否有明确的方法告诉我的代码引用特定的内容文件?还是我以完全错误的方式处理这个问题?
| 归档时间: |
|
| 查看次数: |
472 次 |
| 最近记录: |