を作成されている2013そのアップロードされたドキュメントセットにプロパティ/メタデータを追加する方法に関するドキュメントを探します。ドキュメントセットがアップロードするフォルダには、事前に定義されたプロパティがあります。私はそれらを設定する必要があります。Sharepointの私は成功したドキュメントセットを作成することはできませんが、午前VB.NET/C#</p> <p>にプログラム的にリストに新しいドキュメントセットをアップロードするには、SharePoint 2013 ECMを使用していますどのようにドキュメントセットにプロパティを追加する
次のコードは、新しいドキュメントセットを作成します。しかし、そこからプロパティを追加する方法については私がインターネット上で見つけることができるゼロの情報があります。 Sharepoint 2010ライブラリでは、DocumentSet.Createにプロパティフィールドが含まれていますが、2013は表示されません。
Dim context As ClientContext = New ClientContext("URL")
context.Credentials = New NetworkCredential("Username", "Password")
'Get the document library in which the document set has to be created
Dim list As List = context.Web.Lists.GetById(New Guid("dc9e7aa5-5ac3-499c-a967-fa8f04bf1c90"))
'Get the parent folder where the document set has to be created
Dim parentFolder As Folder = list.RootFolder
'Get the "Document Set" content type by id (Document Set content type Id : 0x0120D520) for the document library
Dim ct As ContentType = context.Web.ContentTypes.GetById("0x0120D520")
context.Load(ct)
context.ExecuteQuery()
'Create a new document set
'A new document set will be created in "Documents" library as "Test Document" under which you can add the documents
DocumentSet.Create(context, parentFolder, dsName, ct.Id)
context.ExecuteQuery()
エラーが発生しました:「列 'App No'は存在しません。別のユーザーによって削除されている可能性があります。助言がありますか? – Cyassin
おそらくこのエラーは、提供された列名 'App No'がその表示名に対応しているが、' ListItemAllFields'がフィールド内部名を期待しているために発生する可能性があるので、内部名を指定してください。 –
ありがとうVadim、 私は内部名私は週末にクライアントとのコミュニケーション・ポイントがなく、その情報にアクセスすることなく作業していました。 代わりに、folder.Properties.Item( "App No")= "blah"を使って解決することができました。それがなぜ機能するのかを理解しようとすると、そのメソッドは表示名を受け入れますか? プロジェクトを完成させる立場に立てることができたコードの残りの部分について大きな感謝をします。 – Cyassin