1

在 SP2010 中,创建一个DocLib支持内容类型(添加都柏林核心文档内容类型,并将其设置为默认 CT)并启用支持版本。同样添加另一个内容类型链接到文档

创建一个使用 Dublin Core CT 的文档。将其发布为版本 1

编辑文档的属性并更改内容类型 ko 链接到文档 将其发布为版本 2

现在从代码中,当我尝试读取项目的字段(最新版本)时,我可以使用代码读取内容类型

object val = spItem[field.Id]

但是在版本化文档的情况下,我使用了这段代码

object val = spItem[field.InternalName];

但不幸的是,内容类型值为null.

如何读取版本文档的内容类型。

4

1 回答 1

2

我理解这个问题,并且已经看到了这个错误。

不幸的是,SharePoint 2013 似乎有同样的错误(即 SPListItemVersion 中没有填充 ContentType 字段)。

ContentTypeId 字段似乎已填充,因此作为一种解决方法,可以对 ContentTypeId 进行硬编码测试。

于 2015-09-16T20:34:12.937 回答