爲了從包含子文件夾的文檔庫中檢索所有列表項,我正在使用客戶端對象模型方法C#。我查閱了MSDN文檔,並且發現我爲什麼無法獲取字段屬性,或者我是否正確執行此操作。從文檔庫中的所有子文件夾中檢索所有文檔 - CSOM
NetworkCredential credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
ClientContext clientcontext = new ClientContext(Resources.defaultSPSite);
clientcontext.Credentials = credentials;
//Load Libraries from SharePoint
//Web site = clientcontext.Web;
clientcontext.Load(clientcontext.Web.Lists);
clientcontext.ExecuteQuery();
//List sharedDocumentsList = clientcontext.Web.Lists.GetByTitle("TestLDOCS");
//CamlQuery camlQuery = new CamlQuery();
//camlQuery.ViewXml = @"<View Scope='Recursive'><Query></Query></View>";
foreach (List list in clientcontext.Web.Lists)
{
clientcontext.Load(list);
clientcontext.ExecuteQuery();
//list.TemplateFeatureId.ToString().Equals("") &&
string baseType = list.BaseType.ToString();
string listTitle = list.Title.ToString();
if (list.BaseType.ToString().Equals("DocumentLibrary", StringComparison.InvariantCultureIgnoreCase) && list.Title.ToString().Equals("TestLDOCS", StringComparison.InvariantCultureIgnoreCase))
{
foreach (Folder subFolder in list.RootFolder.Folders)
{
foreach (File f in subFolder.Files)
{
Console.WriteLine((string) f.Title);
}
}
}
}
}
我收到的錯誤是「foreach(FileF in subFolder.Files)」集合可能不會被初始化錯誤。無論如何要使用CSOM獲取文檔庫中每個子文件夾中的所有文檔的字段值?
我知道你可以用列表項(即listItem [「fieldName」])來強制鍵入字段值。我應該去這條路線嗎?
你的方法看起來非常好,但我得到NotSupportedException'items.Select(i => i.File )' – Santhos 2016-06-29 08:51:12