2012-11-15 52 views
1

拉力賽Web服務v1.39中的用戶故事(使用.NET Rest API) - 我認爲設置pagesize值實際上會限制結果集合中的記錄數。但是,這似乎完全沒有影響。設置限制值會影響結果的數量。Rally .NET Rest API - 請求頁面大小與限制?

有人能解釋一下有什麼區別,以及爲什麼pagesize不能做我期待的東西。

public static QueryResult GetProjectUserStories(string projectReference, int start) 
{ 
    var restApi = GetApi(); 
    var pageSize = (Convert.ToInt32(WebConfigurationManager.AppSettings["RallyPageSize"])); 

    var request = new Request("HierarchicalRequirement") 
    { 
     Fetch = new List<string>() 
     { 
       "Name", 
       "Description", 
       "FormattedID", 
       "TaskEstimateTotal" 
     }, 
     Query = new Query("Project.Name", Query.Operator.Equals, projectReference), 
       PageSize = pageSize, 
       Limit = pageSize, 
       Start = start 
     }; 


     var queryResult = restApi.Query(request); 

     return queryResult; 
} 

我想也許這可能會被翻譯成「FindAll」搜索 - 但爲什麼有一個頁面大小屬性?

回答

2

頁面大小是每個響應中將返回的結果數。 WSAPI允許範圍從1到200.當有超過200個結果時,它必須分成多頁數據。限制是要返回的結果的最大總數。

所以,如果你設置頁面大小設置爲200並限制爲500,還有450個結果工具包將作如下請求你:

  1. 每頁= 200,開始= 1
  2. 每頁= 200 ,開始= 201
  3. 每頁= 50,開始= 401

對於總的450分的結果。

+1

因此,如果我的頁面大小爲50--因爲這是我一次希望在屏幕上顯示的所有內容,那麼如何處理響應中返回的數據以便僅輸出一頁數據值?即。我有一個表,在結果集中的每條記錄中,我將添加一個新行。或者我最好把我的限制設置爲頁面大小並檢索下一批數據?謝謝。 – Jen

+1

使用限制。然後,工具包可以確定幕後的最有效的分頁本身,並且總是會以預期的結果數量結束。 –