2009-07-30 73 views
2

我有RIA Services的Silverlight 3的應用程序,我遇到了一個問題,我的DataPager的是初始loadsize只裝載數據,然後再重裝。它帶來了兩頁數據(PageSize = 10,LoadSize = 20)。它正確顯示119頁的數據,但當我導航到頁面3時,我的數據網格和數據表單中沒有任何內容出現。DataPager的不是在Silverlight 3個工作+ RIA服務

這是我的域名資料來源:

<riaControls:DomainDataSource x:Name="_dds" QueryName="GetCaseLoads" AutoLoad="True" PageSize="10" LoadSize="20"> 
    <riaControls:DomainDataSource.DomainContext> 
     <domain:FooContext /> 
    </riaControls:DomainDataSource.DomainContext> 
</riaControls:DomainDataSource> 

下面是DataPager的片斷:

<data:DataPager Source="{Binding Data, ElementName=_dds}" /> 

而這裏的域名服務查詢:

[RequiresAuthentication()] 
public IQueryable<CaseLoad> GetCaseLoads() 
{ 
    // Return all case loads 
    return this.Context.CaseLoadSet; 
} 

這是非常簡單的,以便我不確定有什麼缺失。任何幫助,將不勝感激;

回答

3

花費了太多時間試圖讓這個工作我終於想通了這個問題,我認爲這是多與RIA Services技術的一個錯誤,因爲我應該得到某種關於此警告消息後。

簡單的解決方法是命令由GetCaseLoads被返回的集合()。我這樣做,它的工作原理:

[RequiresAuthentication()] 
public IQueryable<CaseLoad> GetCaseLoads() 
{ 
    // Return all case loads 
    return this.Context.CaseLoadSet.OrderBy(caseLoad=>caseLoad.fkUserId); 
} 

驚人的多少時間解決這個小問題花了。

0

我有同樣的問題,我可以從RIA服務概述文件中給出的例子,他們正在使用LINQ到SQL,而不是LINQ到EF看到 - 必須有一些兩者之間的差異。

感謝您發佈解決方法,爲我節省了很多小時的費用:)