Я пытаюсь получить некоторые данные с сайта SharePoint Online с помощью C #.У меня есть два разных сайта SharePoint (например, site1.sharepoint.com и site2.sharepoint.com).Я использую тот же код для получения даты, и я могу получить с site1.sharepoint.com и работает отлично, но я не могу получить с site2.sharepoint.com.
Site1 - это клиент нашей организации, что означает настройки безопасностибыли изменены, в то время как site2 по умолчанию (настройки не были изменены с момента его создания).
Может ли быть проблема с site1?Если да, то какие настройки могут вызвать такую ошибку?
Спасибо
private async Task<ListItemCollection> GetIntentFilterData(string url, string content, string columnName, string columnValue)
{
string siteUrl = url;
string login = _configuration["Login"];
string password = _configuration["Password"];
string listName = content;
try
{
using (ClientContext clientContext = new ClientContext(siteUrl))
{
clientContext.Credentials = new SharePointOnlineCredentials(login, password);
List oList = clientContext.Web.Lists.GetByTitle(listName);
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = string.Format(@"<View>
<Query>
<Where>
<Contains>
<FieldRef Name='BaseName'/>
<Value Type='Lookup'>" + columnValue + @"</Value>
</Contains>
<FieldRef Name='EncodedAbsUrl'/>
<Value Type='Lookup'>" + columnValue + @"</Value>
</Where>
</Query>
</View>", "Some specific item");
ListItemCollection collListItem = oList.GetItems(camlQuery);
clientContext.Load(collListItem, items => items.Include(item => item["EncodedAbsUrl"], item => item["BaseName"]));
await clientContext.ExecuteQueryAsync(); // this line throws the exception.
return collListItem;
}
}
catch (Exception e)
{
// The error is "Value cannot be null.\r\nParameter name: key"
throw;
}
}
Я ожидаю того же результата, который я получаю от site2 (список файлов).Результат, который я получаю сейчас -