Привет, сообщество stackoverflowCAML- WebService Sharepoint
Я получил помощь от этого форума. Хотя на этот раз я не мог найти.
I Создано приложение ASP.NET, и я пытаюсь использовать SharePoint WebService для получения некоторых элементов списка.
До сих пор я удастся получить весь список, используя запрос CAML, но я должен выбрать пункты между 2 указанными датами
Я нашел много помощи вокруг этого, и я использую этот метод для форматирования ISO 8601 строка даты:
private string FormatDateForCAML(DateTime theDate)
{
string result = theDate.ToString("yyyy-MM-ddTHH:mm:ssZ");
return result;
}
А вот запрос CAML здания:
System.Xml.XmlElement query = xmlDoc.CreateElement("Query");
query.InnerXml =
"<Where>"+
"<And>"+
"<Geq>"+
"<FieldRef Name=\"startdate\" />"+
"<Value Type=\"DateTime\" IncludeTimeValue=\"True\">" + theStart + "</Value>" +
"</Geq>"+
"<Lt>" +
"<FieldRef Name=\"enddate\" />" +
"<Value Type=\"DateTime\" IncludeTimeValue=\"True\">" + theEnd+ "</Value>" +
"</Lt>" +
"</And>"+
"</Where>";
у меня нет никакого возврата ошибки по этому запросу:
System.Xml.XmlNode nodeListItems = listService.GetListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, null);
Но список Возвращается пустой, хотя shoudn't
Спасибо за любую помощь.
EDIT: Я, наконец, удался, проблема возникла из неправильного запроса здесь является правильной версией
System.Xml.XmlElement query = xmlDoc.CreateElement("Query");
query.InnerXml =
"<Where>"+
"<And>"+
"<Geq>"+
"<FieldRef Name=\"startdate\" />"+
"<Value Type=\"DateTime\" IncludeTimeValue=\"True\">" + theStart + "</Value>" +
"</Geq>"+
"<Lt>" +
"<FieldRef Name=\"startdate\" />" +
"<Value Type=\"DateTime\" IncludeTimeValue=\"True\">" + theEnd+ "</Value>" +
"</Lt>" +
"</And>"+
"</Where>";
Благодаря Roqz я использовал зритель CAML, и я мог бы получить эту проблему: я должен был сравнить начало только дата!
Спасибо вам обоим за помощь :)
Вы пытались построить свой запрос с помощью инструмента, такого как U2U CAML Query Builder, чтобы проверить, работает ли он таким образом? http://www.codeproject.com/Articles/458008/CAML-Query-Builder – roqz
Thx для ответа. Я попытаюсь использовать его сегодня днем и вернуть результат здесь.Хотя я пробовал добавить вокруг элемента , и теперь он переносит весь список, игнорируя мое предложение «где» –
Deunz
В зависимости от версии SharePoint вы также можете использовать RSS-каналы для списков, если вообще не запрашиваете с использованием CAML + родной сети Услуги не тренируются. –