首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SPFile.Properties !=到SharePoint的SPFile.Item.Properties是什么时候?

SPFile.Properties !=到SharePoint的SPFile.Item.Properties是什么时候?
EN

Stack Overflow用户
提问于 2009-09-07 09:45:27
回答 4查看 12.4K关注 0票数 8

我们的一个客户有一个问题,我们无法复制。我们使用SPFile.Properties编程地将文档的属性复制到目标文件中。但是,由于某些原因,文件的属性与存储在文件中的列表中指定的元数据不匹配。

现在,我们可能可以通过复制SPFile.Item.Properties (尚未测试)来解决这个问题,但我只是想知道在什么情况下SPFile.Properties不等于SPFile.Item.Properties。

更新:我们刚刚收到客户的最新消息。使用SPFile.Item.Properties总是返回最新的信息。不过,我们仍想了解原来的问题。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-01-07 16:02:59

SPFile.PropertiesSPFile.Item字段之间有细微的区别,而第一个字段调用起来要慢得多。

您很可能已经看到了Microsoft的"properties“窗口(这个- http://dradisframework.org/images/tutorial/custom_document_properties.png)。这些属性是在访问SPFile.Properties时读取的。读取它们很慢,因为有一些代码基础结构可以解析二进制DOC文件并找到属性。(每次访问属性需要30毫秒或更多毫秒),请参阅这里的更多内容:http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spfile.properties.aspx

在SharePoint中,每一项都是一个SPListItem,其字段值(我这里没有故意使用“属性”一词)存储在Sharepoint的内容数据库中。因此,当您访问SPFile.Item.Properties时,您实际上查看了文件附加到的SPListItem,并查看了它在SharePoint的内容数据库中的属性。

当您上传一个具有"Office“设置的文件时,场景后面发生的情况是,SharePoint将它们复制到SPListItem中的同名字段。(这里有一些信息:http://weblogs.asp.net/bsimser/archive/2004/11/22/267846.aspx)

这就是为什么这些属性通常具有相同的值,但只有当SharePoint知道如何从文件中读取元数据并将它们写回时才会发生这种情况。因此,如果您将.txt文件放入SharePoint存储中,则不会得到任何SPFile.Properties

票数 7
EN

Stack Overflow用户

发布于 2009-09-09 16:03:21

用户将始终在文档库中看到ListItem属性,而不是SPFile属性。因此,在副本中使用ListItem属性是可行的。

票数 1
EN

Stack Overflow用户

发布于 2011-08-15 15:49:57

我认为此问题与Sharepoint属性提升/降级功能有关,该特性允许将文档属性嵌入到物理MSOffice文件中并与其一起传输到客户端等。然而,目前仅支持此功能(据我所知)。

乔纳森

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1388502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档