Access/Display contentid 在视图中的一个模型?

Access/Display contentid in the view of a model?

我在 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 接口仅由代理 class 为您的块类型实现,这就是为什么您找不到 ContentLink 属性 直接在 BlockData 实例上。

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