在模型视图中访问/显示 contentid?

问题描述

我在episerver 中创建了一个新的块类型,我正在编辑它的相应视图。我希望能够在我的 html 中显示块的 contentid,以便我可以使用 javascript 发挥一些魔法作用。

如何从视图中获取块的 contentid?

我希望能够做到这一点:

<div class="something" data-id="@Model.contentid"></div>

解决方法

您需要将块实例转换为 IContent,然后使用 @Model.ContentLink.ID

所以,例如:

<div class="something" data-id="@(((IContent)Model).ContentLink.ID)"></div>

强制转换的原因是 IContent 接口仅由您的块类型的代理类实现,这就是您不会在 ContentLink 上找到 BlockData 属性的原因直接实例。

如果您对详细信息感兴趣:https://world.episerver.com/Blogs/Johan-Bjornfot/Dates1/2012/11/Shared-blocks--IContent/

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...