CAML-запрос, генерирующий исключение SoapServerException - PullRequest
2 голосов
/ 15 февраля 2011

Это исключение:

Exception of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown.

Вот код CAML:

<Query>
 <Where>
  <And>
   <And>
    <And>
      <And>
        <And>
          <And>
            <And>
              <Contains>
                <FieldRef Name="Title">
                  <Value Type="Text">password</Value>
                </FieldRef>
              </Contains>
              <Contains>
                <FieldRef Name="Answer">
                  <Value Type="Note">pass</Value>
                </FieldRef>
              </Contains>
            </And>
            <Eq>
              <FieldRef Name="PubDestination1">
                <Value Type="Text">PCOM</Value>
              </FieldRef>
            </Eq>
          </And>
          <Eq>
            <FieldRef Name="PubDestination2">
              <Value Type="Text">2</Value>
            </FieldRef>
          </Eq>
        </And>
        <Eq>
          <FieldRef Name="FaqCategory">
            <Value Type="Text">Autenticação</Value>
          </FieldRef>
        </Eq>
      </And>
      <Eq>
        <FieldRef Name="PublicComponent">
          <Value Type="Boolean">1</Value>
        </FieldRef>
      </Eq>
    </And>
    <Geq>
      <FieldRef Name="PubStartDate">
        <Value Type="DateTime" IncludeTimeValue="TRUE">2011-02-07T00:00:00Z</Value>
      </FieldRef>
    </Geq>
  </And>
  <Leq>
    <FieldRef Name="PubStartDate">
      <Value Type="DateTime" IncludeTimeValue="TRUE">2011-02-25T00:00:00Z</Value>
    </FieldRef>
   </Leq>
  </And>
 </Where>
</Query>

Код работает, когда я не указываю никаких фильтров ...

1 Ответ

2 голосов
/ 15 февраля 2011

Значение элемента не должно быть внутри элемента FieldRef. Вы должны поместить и FieldRef, и Value в один родительский элемент (например, Contains):

  <Contains>
    <FieldRef Name="Title"/>
    <Value Type="Text">password</Value>
  </Contains>
...