字符串数组的本地化(asp-items)

Posted

技术标签:

【中文标题】字符串数组的本地化(asp-items)【英文标题】:Localization of string arrays (asp-items) 【发布时间】:2017-08-29 00:17:24 【问题描述】:

我有一个静态类:

public static class MyDict
    
        public static IEnumerable<string> fruits = new string[]  "Apple", "Banana", "Cherry" ;
        public static IEnumerable<string> vegetables = new string[]  "Carrot", "Tomato", "Cabbage" ;
    

这很容易从视图中使用:

<select asp-for="Fruits" asp-items="@(new SelectList(@ListingDict.fruits ))"></select>

现在我还需要一份本地化(法语)水果清单。我知道如何将 IStringLocalizer/IhtmlLocalizer/IViewLocalizer 注入到视图中,对于简单的字符串,我使用 @Localizer("Foo")。但是处理字符串数组的最佳方法是什么?我是否需要摆脱静态 MyDict 而是将 IStringLocalizer 注入 MyDict 实例,然后呢?本地化数组个性的每个项目,例如_localizer("Apple"), _localizer("Banana")?

我真的很喜欢我现在只有一个静态查找类的简单性,但我认为它不适用于本地化。这里最好的方法是什么?如何在资源文件中存储字符串数组?

谢谢

【问题讨论】:

【参考方案1】:

使用本地化值创建一个包含所需属性的单个模型,然后 inject it into the view 或将其添加为模型或添加具有不同内容的单独 View Components

【讨论】:

以上是关于字符串数组的本地化(asp-items)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS info.plist 文件中本地化字符串数组

字符串,字典,数组写入本地文件和从本地文件读取

Vue如何将数组复制到本地进行编辑?为啥它适用于字符串而不适用于数组? [复制]

在 C# 中将 2 个本地字符串 [] 添加到单个数组中

从函数返回本地字符数组[重复]

本地存储数组 (Swift)