Don*_*lle 1 c# asp.net-mvc razor
我们有一个局部视图,它呈现一个表示菜单项的<ul>包含<li>项。这些目前在结构上是静态的,并使用资源文件处理多语言,如下所示:
<li><a href="@Url.Action("commissionlist", "commissions")">@Resources.Labels.Commissions</a></li>
Run Code Online (Sandbox Code Playgroud)
但是,我需要动态构建菜单结构。所以我有一个菜单项对象列表,每个对象都有一个 MenuResourceTag 字段。
我如何从一个代表我需要查找的属性名称的字符串(例如“Commissions”)到访问 Resources.Labels 上适当属性的值?
我知道答案将涉及反射,但我发现的所有类似事物的示例都需要Resources.Labels 类的实例,而我无法弄清楚如何在 Razor 中获取它。
您可以在模型中设置标签文本,但如果您想继续直接调用资源文件,则可以尝试以下操作:
资源文件
| 姓名| 价值|
| 文字_A | 一个 |
| 文字_B | 乙 |
看法
<ul>
@foreach (var x in new List<string>{ "A", "B" })
{
<li><a href="@Url.Action("commisionList", new { Data = x})">@Resources.ResourceManager.GetString("Text_" + x)</a></li>
}
</ul>
Run Code Online (Sandbox Code Playgroud)
使用 ResourceManager 按键访问值。
| 归档时间: |
|
| 查看次数: |
2078 次 |
| 最近记录: |