DomainDataSource DataPager与silverlight 3 DataGrid和.Net RIA服务

Den*_*ard 2 data-paging silverlight-3.0 wcf-ria-services

我有一个简单的datagrid示例与silverlight 3,并使用.NET Ria服务使用DomainDataSource以及DataPager声明性地填充它(在代码隐藏中没有任何内容),并且遇到了这个问题:

LoadSize为30,页面大小为15,加载页面时,第1页和第2页显示正确,但当我超出第2页时,网格中没有任何内容显示.

这曾经在使用.NET Ria服务的Mix 2009预览版的silverlight 3 beta中工作,我有一个非常简单的例子,并且已经验证了Web项目上的服务被调用以加载新的批处理,但是网格没有显示任何数据.

任何人都可以解释为什么网格只显示数据的初始加载而不是来自寻呼机的后续批次?

这是我的xaml:

    <riaControls:DomainDataSource x:Name="ArtistSource" QueryName="GetArtist" AutoLoad="True" LoadSize="30" PageSize="15">
        <riaControls:DomainDataSource.DomainContext>
            <domain:AdminContext />
        </riaControls:DomainDataSource.DomainContext>
    </riaControls:DomainDataSource>

    <data:DataGrid Grid.Row="1" x:Name="ArtistDataGrid" ItemsSource="{Binding Data, ElementName=ArtistSource}">
    </data:DataGrid>

    <StackPanel Grid.Row="2">
        <data:DataPager Source="{Binding Data, ElementName=ArtistSource}" />
    </StackPanel>
Run Code Online (Sandbox Code Playgroud)

Den*_*ard 7

在第一个之后检索的批量数据抛出异常:

只有LINQ to Entities中的排序输入才支持'Skip'方法.必须在方法'Skip'之前调用'OrderBy'方法.

添加以下块以对数据进行排序后,寻呼机正常工作:

<riaControls:DomainDataSource.SortDescriptors>
    <riaData:SortDescriptor PropertyPath="Name" Direction="Ascending"/>
</riaControls:DomainDataSource.SortDescriptors>
Run Code Online (Sandbox Code Playgroud)

这真的让我感到悲伤 - 无论如何我打算对数据进行排序,但只是尝试了寻呼机最简单的情况(我正在从SL3 beta迁移到SL3,以及从Mix 2009 Preview到2009年7月.NET RIA Services的预览版,并且卡在了这个上面.我不认为正常的Linq查询在调用skip之前需要orderby,但这似乎是DataPager/DomainDataSource的情况......

呼!