EpiServer:获取内容区域中项目的 ID

EpiServer: Get IDs of items in content area

我正在处理块 (blockA) 的视图 (Razor)。此块包含名为 solutions 的 ContentArea。我想获得一个列表,作为 solutions.

中项目 ID 的字符串

我已尝试查看 @Model.Solutions.FilteredItems.@(((IContent)Model).ContentLink. 以查看是否可以访问所有项目的 ID 列表。

如何获取 solutions 中所有项目的 ID 作为字符串列表?

ID在ContentAreaItem的ContentLink中即可,无需投射

要输出为逗号分隔列表,

// always null check contentareas in templates
var idList = Model.ContentArea != null && Model.ContentArea.FilteredItems.Any() ? string.Join(",", Model.ContentArea.FilteredItems.Select(x => x.ContentLink.ID)) : "";

<div>@idList</div>

将其写成列表

@if (Model.ContentArea != null && Model.ContentArea.FilteredItems.Any())
{
    <ul>
        @{
            foreach (var item in Model.ContentArea.FilteredItems)
            {
                <li>@item.ContentLink.ID</li>
            }
        }
    </ul>
}