c# - 如何通过 C# 在 SharePoint 2007 列表中获取仅包含用户创建字段的列表?

标签 c# .net sharepoint sharepoint-2007

您好,感谢您的关注!

背景

我目前有一个 C# 方法,用于遍历 SharePoint 列表集合并返回这些 SP 列表的列表,包括它们的列/SPFields 的嵌套列表。

问题

如何通过 C# 在 SharePoint 2007 列表中获取仅由用户创建的字段的列表?

到目前为止的代码。 . .

SPSite site = SPContext.Current.Site;
        SPWeb web = site.OpenWeb();
        web.AllowUnsafeUpdates = true;
        SPListCollection lists = web.Lists;

        var PellaListCollection = new List<PellaListModel>();
        
        foreach (SPList l in lists) {
                var PellaList = new PellaListModel();
                var PellaListColumns = new List<PellaListColumn>();
                foreach (SPField c in l.Fields) {
                    if (c.Hidden.Equals(false))
                    {
                        var type = c.FieldTypeDefinition.TypeName.ToString();
                        var col = new PellaListColumn
                        {
                            ColumnId = c.Id,
                            ColumnDataType = type,
                            ColumnTitle = c.Title
                        };
                        PellaListColumns.Add(col);
                    }
                }
                PellaList.ListColumns = PellaListColumns;
                PellaList.ListId = l.ID;
                PellaList.ListTitle = l.Title;
                PellaList.Description = l.Description;
                PellaListCollection.Add(PellaList);
        }
        
        web.AllowUnsafeUpdates = false;

        return PellaListCollection;
    }

如您所见,现在我正在过滤哪些 SPFields 不是“隐藏的”,但这仍然会返回相当多的标准 SharePoint 生成的字段和列表。我只需要用户创建的字段。

谢谢!

马特

最佳答案

您正在寻找 FromBaseType SPField 的属性。如果该字段是列表的原始架构的一部分,则此属性为真。

看看这个好SharePoint Exchange article了解更多。

关于c# - 如何通过 C# 在 SharePoint 2007 列表中获取仅包含用户创建字段的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8436954/

相关文章:

c# - 在 C# 中实现行为类似于值类型的引用类型

c# - 用于 Visual Studio 2008 外观的 ToolStripProfessionalRenderer

sharepoint - 从存储在文档库中的 Excel 中获取数据并使用 powershell 将其显示在列表中

c# - 使用 C# 访问 Sharepoint - 在哪里可以找到引用库?

发布后,SharePoint Designer工作流不会更改

c# - 即使启用了 ClearTypeHinting,WPF 中的文本也很模糊?

c# - EF7 .NET Core 1 RC2 添加迁移失败

c# - 当我关闭应用程序时,我的程序仍在任务管理器中

c# - 如何强制 XDocument 在声明行中输出 "UTF-8"?

.net - 设置个人 .NET Web 开发环境的最简单方法是什么?