2014-10-20 87 views
0

我試圖執行以下CAML查詢到客戶端對象模型在SharePoint:CAML <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

的那些是這個規則真的對?這是否意味着當我的情況複雜時,我必須使用許多令人討厭的OR/ANDs? – Vladimir 2014-10-21 12:59:26

+1

是的,它也是。是的,你必須使用許多討厭的奧爾斯和安迪爾 – brtb 2014-10-21 13:23:00

+0

謝謝。也許有一些技巧可以避免這個... – Vladimir 2014-10-21 13:25:07

相關問題