gpt4 book ai didi

sharepoint - 在 SharePoint 中访问 SPLIstItem 属性

转载 作者:行者123 更新时间:2023-12-02 07:56:33 25 4
gpt4 key购买 nike

我正在尝试一些非常简单的事情 - 访问我的 SharePoint 列表的项目及其属性。

但是,对于所有普通列表,SPListItem.Properties 计数为零。对于文档和页面库,一切都按预期工作。因此,如果列表项基于文档类型,则一切都很好。如果它们基于项目,则不返回属性。

我在两种环境中尝试过,使用从 OOTB 发布模板创建的新站点,使用基于 OOTB 内容类型的新列表等。总是一样。

总是返回适量的 SPListItems。标题和名字没问题。只是 .Properties 哈希表完全是空的。

无奈之下,我编写了一个输出以下(丑陋!)诊断信息的 Web 部件。

    foreach (SPList list in SPContext.Current.Web.Lists)
{
foreach (SPListItem item in list.Items)
{
Label label = new Label();
label.Text = "Name: " + item.Name + "Property count: " + item.Properties.Count;
this.Controls.Add(label);
}
}

唯一的观察是它的工作原理与我之前描述的完全一样。我只是分享代码,以表明这是可以想象到的最基本的操作。

这是示例输出 - 我添加了换行符以提高可读性;-)

Name: Test Property count: 0
Name: default.aspx Property count: 21

显然,项目“Test”是一个基于项目的列表项,而 default.aspx 是一个页面。

有没有人遇到过这样的事情?有什么想法吗?

最佳答案

item["FieldName"] 是获取 SharePoint 列表中元数据列值的规范方法。如果您需要获取 SharePoint 列表的可用字段列表,请检查父 SPList 对象的 Fields 属性,它是此列表中字段的集合。每个字段对象都有一个名为 InternalName 的属性,当您使用 SPListItem 的实例时,您应该使用该属性来访问其值。

关于sharepoint - 在 SharePoint 中访问 SPLIstItem 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/647806/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com