SPFile.Properties
とフィールドの間にはわずかな違いがSPFile.Item
あり、最初のフィールドは呼び出すのがはるかに遅くなります。
おそらく、Microsoft Officeドキュメントの「プロパティ」ウィンドウ(これは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
。