Я хочу загрузить несколько файлов, скажем, с помощью регулярного выражения, где пользователь предоставляет имя файла через переменную, которое передается в запросе caml и может перебирать URL-адрес списка.Немного нового в этой зоне запроса caml.Любой совет, как этого добиться?
camlQuery.ViewXml = @"<View>
<Query>
<Where><Eq><FieldRef Name='FileLeafRef' /><Value Type='File'>" + fileToDownload + @"</Value></Eq></Where>
</Query>
<ViewFields><FieldRef Name='FileRef' /><FieldRef Name='FileLeafRef' /></ViewFields>
</View>";
Web web = clientContext.Web;
clientContext.Load(web);
clientContext.Load(web.Lists);
List list = clientContext.Web.GetList(listUrl);
//clientContext.Load(list);
//clientContext.ExecuteQuery();
ListItemCollection listItems = list.GetItems(camlQuery);
clientContext.Load(listItems);
clientContext.ExecuteQuery();
foreach (var item in listItems)
{
if (item.FileSystemObjectType == FileSystemObjectType.File)
{
Console.WriteLine("This is file");
}
else if (item.FileSystemObjectType == FileSystemObjectType.Folder)
{
Console.WriteLine("This is folder");
}
camlQuery.ViewXml = @"<View>
<Query>
<Where><Eq><FieldRef Name='FileLeafRef' /><Value Type='File'>" + fileToDownload + @"</Value></Eq></Where>
</Query>
<ViewFields><FieldRef Name='FileRef' /><FieldRef Name='FileLeafRef' /></ViewFields>
</View>";
Web web = clientContext.Web;
clientContext.Load(web);
clientContext.Load(web.Lists);
List list = clientContext.Web.GetList(listUrl);
//clientContext.Load(list);
//clientContext.ExecuteQuery();
ListItemCollection listItems = list.GetItems(camlQuery);
clientContext.Load(listItems);
clientContext.ExecuteQuery();
foreach (var item in listItems)
{
if (item.FileSystemObjectType == FileSystemObjectType.File)
{
Console.WriteLine("This is file");
}
else if (item.FileSystemObjectType == FileSystemObjectType.Folder)
{
Console.WriteLine("This is folder");
}
Мне нужно загрузить файл из соответствующего шаблона в переменной FiletoDownload, например, если его . , он должен загрузить все файлы.