2016-07-12 22 views
0

以下のcamlクエリを使用すると、フォルダ内のアイテムを取得できますが、これらのアイテムまたはドキュメントが存在する「フォルダ」フィールド値を取得する方法が表示されます住んでいる。SharePoint 2010 CSOMはドキュメントライブラリ内のフォルダのフィールド値を取得します

+ "<Query>" 
      + " <Where>" 
      + "  <Eq><FieldRef Name='FSObjType' /><Value Type='int'>0</Value></Eq>" 
      + " </Where>" 
      + "</Query>" 

フォルダ情報を取得するための私のコード...

string strFieldValue = string.Empty; 
      CamlQuery qryFolder = new CamlQuery(); 
      qryFolder.ViewXml = @"<View Scope='RecursiveAll'>" 
       + "<Query>" 
       + " <Where>" 
       + " <And>" 
       + "  <Eq><FieldRef Name='FSObjType' /><Value Type='int'>1</Value></Eq>" 
       + "  <Eq><FieldRef Name='FileRef' /><Value Type='Text'>"+folderName+"</Value></Eq>" 
       + " </And>" 
       + " </Where>" 
       + "</Query>" 
       + "<ViewFields>" 
       + "<FieldRef Name='Title' /><FieldRef Name='FieldValue' /><FieldRef Name='FileRef' />" 
       + "</ViewFields>" 
       + "</View>"; 
      qryFolder.FolderServerRelativeUrl = rootFolder;//[email protected]"/"+folderName; 

      ListItemCollection itemColl = docs.GetItems(qryFolder); 
      context.Load(itemColl); 
      context.ExecuteQuery(); 
      if (itemColl.Count == 1) 
      { 
       strFieldValue = itemColl[0]["FieldValue"].ToString(); 
      } 

return strFieldValue 

FSObjTypeで使用Camlのクエリはフォルダに対してのみである1であるとき、私はここに値を取得...残念ながら私は時にnullを取得FSObjTypeを使用したクエリはファイルのみをクエリする0です。私の要件は、

おかげで、 ジャミール

+0

私はあなたが何を求めているのかは分かりません。あなたはあなたの質問を言い換えることができますか? – Thriggle

+0

@Thriggle基本的に私は、ドキュメントライブラリのフォルダ内のファイルとそのファイルのプロパティ(フィールド値)を取得することができます。今私は同時にファイルが存在しているフォルダのプロパティを取得したいと思います。ただし、フォルダのプロパティはファイルレベルからnullを表示しています。 – Jameel

+0

ドキュメントとは異なり、フォルダには通常、フォルダ名のようないくつかのフィールド値はありません。どんなプロパティにアクセスしようとしていますか?プロパティにアクセスするために現在使用しているコードを表示できますか? – Thriggle

答えて

関連する問題