@ Html.Display没有显示数据,只显示variable.property

时间:2018-01-28 20:54:38

标签: asp.net-mvc

我想在我的视图中显示“productName”。产品名称来自我的“产品”表,并通过FK关系绑定到我的“工具包”表(KitId是“产品”表中的外键)。

在'Kit'的视图中,我试图用'KitId'显示所有产品。我可以看到数据正在被正确过滤,因为有5个产品使用了这个'Model.KitId'。

这是我过滤的地方,应该显示'productName'。

@foreach (var product in Model.Products)
{
    <dt>Product Name</dt>
    <dd>@Html.Display(product.ProductName)</dd>
}

当我在<dd>@Html.Display(product.ProductName)</dd>

上设置断点时

我可以将鼠标悬停在product.ProductName上,我可以看到'ProductName'值正在拾取要显示的实际ProductName。

但是当我运行应用程序时,我看到<dt>Product Name</dt><dd>product.ProductName</dd>为空,没有显示数据。

不确定如何解决这个问题。我应该引用@Html.DisplayFor(something)吗?我试图做@Html.DisplayFor(model => model.something)' but there is no model.productName`,因为这不是我的FK关系的设计方式。

如果需要,我可以提供任何其他详细信息。

1 个答案:

答案 0 :(得分:0)

@Html.Raw(product.ProductName)解决了这个问题。不确定为什么@Html.Raw()有效,而@Html.Display()没有。但它奏效了。希望这有助于其他人。