我需要呈现一个存在于资源文件中的 HTML 链接[Display(Name = "MyPropertyName" ResourceType = typeof(Res.Props))]public bool MyProperty{ get; set; }MyPropertyName 资源有一些 HTML:"Click <a href="bla.com">here</a> to find out more."我需要在视图上呈现它,以便链接是可点击的。尽管我尝试了哪种方法,HTML 将永远不会呈现,一些尝试(不是确切的语法,但你明白了要点)将显示原始 HTML,而有些则根本不显示任何内容。var htmlLabel = Html.LabelFor(m => m."MyPropertyName" ).ToString()Html.Raw(htmlLabel)Html.Raw(Html.LabelFor(m => m."MyPropertyName" ).ToString())Html.Raw(Html.LabelFor(m => m."MyPropertyName")MvcHtmlString.Create(htmlLabel);Html.Raw(MvcHtmlString.Create(htmlLabel))等等我发现了一个在控制器上获取属性信息并通过 ViewBag 传递它然后用 HTML.Raw 渲染它的建议,所以我在这里(以及其他一些)遵循了这个,但该代码只提取了属性的名称“ MyPropertyName”,而不是资源文件中的字符串。有任何想法吗?谢谢。
1 回答
喵喔喔
TA贡献1735条经验 获得超5个赞
好吧,在最后一次愚蠢的尝试之后,这突然决定起作用。对于将来遇到此类问题的任何人:
该应用程序有一个StronglyTypedResourceBuilder包含我需要的所有数据的类。所以以下工作没有问题:
@using StringResources = Namespace.Resources.StringResources
...
@Html.CheckBoxFor(m => m.MyPropertyName)
@Html.Raw(@StringRes.MyPropertyName)
...
真是浪费了一个上午。
- 1 回答
- 0 关注
- 63 浏览
添加回答
举报
0/150
提交
取消