让我先说我知道我可以使用HTML.Raw()来显示包含在字符串中的 HTML。但是,我认为 MVC 的目的是分离代码逻辑,让前端开发人员专注于 UI 而不是逻辑。因此,我尝试完全按照我想要的样子传递模型中的所有内容。
这让我想到了我的问题。我有一个包含地址的模型。我编写了一个函数,它以几个不同的版本(单行、两行、多行)返回地址,并且我将它们设置为HtmlString对象。
public HtmlString TwoLine { get { return ReturnFullAddress(2); } }
/* function removed for brevity */
但是,当我编写以下剃须刀代码时:
@Html.DisplayFor(modelItem => item.Address.TwoLine)
视图中不返回任何文本。当我调试它时,在 Address.TwoLine 中有一个正确分配的值,但它在 {} 内(我认为这很奇怪)。
我该如何进行这项工作,或者为什么这不起作用?