如何获取 SharePoint 文档库中项目的内容类型列或元数据?
此链接提供了我不需要的文件属性 http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spfile.properties.aspx
我只想获取项目的内容类型列。 我试过这个字符串 strXML = oItem.Xml.ToString();但它给了我同样的垃圾。
最佳答案
您可以使用 ContentType
SPListItem
的属性。如果您想要列表中的所有内容类型,您可以使用 ContentTypes
SPList
的属性。获得内容类型引用后,您可以检查其 Fields
属性以获取列。
列表项的内容类型:
SPContentType contentType = myListItem.ContentType;
foreach (SPField field in contentType)
{
// Do your stuff with this column
}
列表的内容类型:
SPContentTypeCollection contentTypes = myList.ContentTypes;
List<object> values = new List<object>();
List<SPContentTypeId> blackList = new List<SPContentTypeId>()
{
SPBuiltInContentTypeId.System,
SPBuiltInContentTypeId.Item,
};
var goodContentTypes = contentTypes.Where(c => !blackList.Contains(c.Id));
foreach (SPContentType contentType in goodContentTypes)
{
foreach (SPField field in contentType.Fields)
{
// Do your stuff with this column e.g. Get value from item
values.Add(myListItem[field.InternalName]);
}
}
关于c# - 获取项目的内容类型列/元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5197452/