2014-10-20 2 views
0

Я пытаюсь выполнить следующий CAML-запрос SharePoint в Client Object Model:КАМЛ <AND> вызывает ServerException

<Query> 
    <Where> 
     <And> 
      <Geq> 
       <FieldRef Name="StartDate" /> 
       <Value Type="DateTime">2014-10-10</Value> 
      </Geq> 
      <Leq> 
       <FieldRef Name="StartDate" /> 
       <Value Type="DateTime">2014-10-20</Value> 
      </Leq> 
      <Eq> 
       <FieldRef Name="AssignedTo" /> 
       <Value Type="Integer"><UserID/></Value> 
      </Eq> 
     </And> 
    </Where> 
    <OrderBy> 
     <FieldRef Name="Title" Ascending="TRUE" /> 
    </OrderBy> 
</Query> 

выглядит простым и очевидным, но это приводит к ServerException в .NET Что не так?

ответ

1

вы не можете присоединиться к более чем два выражения в и тег добавить еще и как те, помеченных ----

<Where> 
    <And> 
     <And> --- 
      <Geq> 
       <FieldRef Name="StartDate" /> 
       <Value Type="DateTime">2014-10-10</Value> 
      </Geq> 
      <Leq> 
       <FieldRef Name="StartDate" /> 
       <Value Type="DateTime">2014-10-20</Value> 
      </Leq> 
     </And> --- 
     <Eq> 
      <FieldRef Name="AssignedTo" /> 
      <Value Type="Integer"><UserID/></Value> 
     </Eq> 
    </And> 
</Where> 
+0

Это правило верно для ? Означает ли это, что я должен использовать много неприятных ORs/AND, когда у меня сложное состояние? – Vladimir

+1

да также для . и да, вы должны использовать много неприятных ors и ands – brtb

+0

Спасибо. Может быть, есть какой-то трюк, чтобы избежать этого ... – Vladimir

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