呈现包含存储在资源文件中的HTML的显示名称

时间:2019-03-14 13:05:56

标签: c# asp.net-mvc razor html-helper

我需要呈现资源文件中存在的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进行渲染。原始,所以我遵循了this here(还有其他一些),但是该代码只能插入属性“ MyPropertyName”的名称,而不是资源文件中的字符串。

有什么想法吗?谢谢。

1 个答案:

答案 0 :(得分:2)

现在,这突然决定在上一次愚蠢的尝试后开始工作。对于将来遇到此类问题的任何人:

该应用程序有一个coursePassGrade类,其中包含我需要的所有数据。因此,以下工作毫无问题:

courseHours

浪费一个早晨。