我在Sitecore中有一个项目,其中包含一个内容部分,它是一个清单。此清单包含我已输入Sitecore的多个Active Directory组的名称。
当项目加载时,我试图遍历清单中的所有名称,以便我可以查看用户是否是其中一个组的成员(如果已选中)。
在测试我的代码时,我无法获取ID"显示"值(不确定这是否是正确的语言),例如" IT_Support_Group"。相反,我只能获得项目ID。
Example: {80B1AEEA-D36C-416C-B5BF-AF5F428E4D31}
我一直在玩各种版本的以下代码,但没有运气:
Dim ADCheckList As Sitecore.Data.Fields.MultilistField = Sitecore.Context.Item.Fields("ADGroupAccess")
If ADCheckList IsNot Nothing Then
For Each ADListName As String In ADCheckList.Items
'If IsInGroup(ADListName) and IsADListItemChecked(ADListName) Then
' Response.Write("User is in the " & ADListName & " selected group.<br/>"
'End If
Next
End If
答案 0 :(得分:1)
你非常接近..你需要调用GetItems()
方法(而不是Items
属性),这会将项目ID解析为Sitecore Item
对象数组。 / p>
然后,您可以调用item.Name
等属性或使用.. item.Fields[FieldName].Value
检索特定字段。