Я пытаюсь составить запрос CAML, который сравнивает два объекта DateTime, но я не могу заставить его работать, используя сравнение уравнений . Из моего тестирования я могу заставить Gt, Lt, Geq, Leq работать со сравнениями DateTime, но Eq, похоже, вообще не работает.
Первый объект — это поле «Дата и время» (созданное InfoPath и сохраненное в поле «Дата и время» в списке SharePoint). В текущем примере указано «14.03.2012, 00:00». Я попытался использовать значение [Сегодня /], используя жестко закодированное значение в формате ISO 2012-03-14T00:00:00Z, но пока ничего не сработало. Я экспериментировал с IncludeTimeValue, устанавливая его в true/false, никаких улучшений.
Мой текущий запрос выглядит примерно так:
<Query>
<Where>
<Eq>
<FieldRef Name="SomeDateTimeField" IncludeTimeValue="TRUE" />
<Value Type="DateTime" IncludeTimeValue="TRUE">2012-03-14T00:00:00Z</Value>
</Eq>
</Where>
</Query>
Он ничего не возвращает, хотя у меня есть элемент с этой датой и временем в списке. Любые идеи?