Формат даты списка Sharepoint - PullRequest
       5

Формат даты списка Sharepoint

1 голос
/ 13 февраля 2012

Формат даты для списков sharepoint: M / D / YYYY У меня есть столбцы в splist: start_time и end_time, и мне нужно написать запрос, в котором я получаю те поля, где «сегодняшняя» дата больше или равнаstart_time и меньше или равно end_time.Конечно, у меня также есть часы: минуты в моих колонках.У меня проблема в том, что я обнаружил, что формат даты CAML: гггг / мм / дд Thrs: min: ssZ.Я знаю о теге для получения текущей даты, но как мне изменить этот формат даты из полей, чтобы сравнение в запросе было успешным?

Это часть кода:

query.Append("<FieldRef Name = 'Start_Time'");
query.Append("/>");
query.Append("<Value Type ='DateTime'IncludeTimeValue='True'>");
query.Append("<Today/>");
query.Append("</Value>");

Сравнение не удастся, так как формат даты splist не в формате даты CAML

Ответы [ 2 ]

1 голос
/ 13 февраля 2012

Попробуйте:

<Where>
  <And>
     <Geq>
        <FieldRef Name='start_time' />
        <Value Type='DateTime'><Now /></Value>
     </Geq>
     <Leq>
        <FieldRef Name='end_time' />
        <Value Type='DateTime'><Now /></Value>
     </Leq>
  </And>
</Where>

Поскольку start_time и end_time на самом деле имеют тип Date, а не Text, такой запрос должен работать. Независимо от того, как даты отображаются на экране, даты будут использовать формат ISO8601 в CAML.

Обратите внимание, что вышеупомянутый CAML был собран с помощью U2U CAML Query Builder .

0 голосов
/ 13 февраля 2012

Вы действительно должны проверить linq для sharepoint. Это позволит вам очень легко использовать запрос CAML, а SPMetal поможет вам создать объект даты, аналогичный дате, которую вы используете в своем коде.

Здесь

Здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...