2009-06-11 11 views
3

リストWebサービス(UpdateListItem)を使用して、リスト内のフォルダにリスト項目を挿入する方法を教えてください。Sharepoint-リストのサブフォルダに挿入

フォルダのブレッドクラムは、次のようなものになります。 [マイサイト]> [マイリスト]> [マイサブフォルダ]私はこのようなCAMLで試してみました

<Batch PreCalc="TRUE" 
OnError="Continue" 
RootFolder="/Lists/MyList/MySubFolder"> 
<Method ID="1" Cmd="New"> 
     <Field Name="Title">Gent</Field> 
     <Field Name="PostalCode">9000</Field> 
     <Field Name="TelephoneZone">09</Field> 
</Method> </Batch> 

しかし、失敗しました。

私は応答として取得しています:無効なURL値です。
** RootFolder属性を削除してもうまく動作しますが、アイテムはフォルダの外に挿入されます。

答えて

4

問題を解決しました。

"RootFolderAttributeは" RootFolder = "/リスト/マイリスト/ MySubFolder" されるべきではなく、 "/サイト/個人用サイト/リスト/マイリスト/ MySubfolder"

はそれをCAML U2Uというツールのおかげで解決でしたクエリビルダ。

+1

はい、MySitesは別のサイトコレクションにあるため、/ sites /ワイルドカードを含める必要があります。 CAML Query Builderは素晴らしいツールであり、多くの時間を隠してくれました! –

0

アイテムをリストに挿入した後、2回目の呼び出しでメタデータを更新し、正しいフォルダに貼り付けましたか?

+0

リストに項目を挿入しても問題ありません。後でそれを更新して特定のフォルダに移動する方法はわかりません。 – AlejandroR

0

サーバーにコードをデプロイできるのであれば、自分のWebサービスをロールバックしてジョブを実行できます。そうすれば、オブジェクトモデル全体に​​アクセスできます。