2011-01-10 3 views
12

Я пытаюсь получить какой-то элемент из списка sharepoint, в зависимости от даты в пользовательском столбце.Сравнение Datetime в запросе CAML для Sharepoint

Я создал свой запрос с помощью U2U Caml Builder, и это сработало, но когда я поместил его в свой собственный код в своем веб-части, он всегда возвращает мне все элементы из списка.

Вот мой код:

DateTime startDate = new DateTime(Int32.Parse(year), 1, 1); 
      DateTime endDate = new DateTime(Int32.Parse(year), 12, 31); 
      SPQuery q = new SPQuery(); 
      q.Query = "<Query><Where><And><Geq><FieldRef Name='Publicate Date' /><Value IncludeTimeValue='FALSE' Type='DateTime'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(startDate) + "</Value></Geq><Leq><FieldRef Name='Publicate_x0020_Date' /><Value IncludeTimeValue='FALSE' Type='DateTime'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(endDate) + "</Value></Leq></And></Where></Query>"; 

      SPListItemCollection allItem = library.GetItems(q); 

ответ

11

Вам не нужно <Query> тег. Поэтому запрос не выполняется.

+0

Большое спасибо! Худшее, что я уже помогаю коллеге по этой ошибке f *** hahahaha! –

+5

Я всегда обвиняю эти ошибки в том, что это был понедельник. –

Смежные вопросы