DataDager DomainDataSource с Silverlight 3 DataGrid и .NET RIA Services - PullRequest
2 голосов
/ 17 июля 2009

У меня есть простой пример сетки данных с Silverlight 3, и я заполняю его службами .NET ria с использованием DomainDataSource вместе с DataPager декларативно (ничего в коде позади), и у меня возникла эта проблема:

LoadSize равен 30, а размер страницы равен 15, и при загрузке страницы 1-я и 2-я страницы отображаются правильно, но когда я перехожу за 2-ую страницу, в сетке ничего не отображается.

Раньше это работало в бета-версии Silverlight 3 с предварительным просмотром Mix 2009.NET Ria Services, и я получил очень простой пример и убедился, что служба в веб-проекте вызывается для загрузки нового пакета, но сетка не показывает никаких данных.

Может ли кто-нибудь пролить свет на то, почему сетка отображает данные только для начальной загрузки данных, а не для последующих пакетов из пейджера?

Вот мой 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>

1 Ответ

7 голосов
/ 18 июля 2009

Произошло исключение для пакетов данных, полученных после первого:

Метод «Пропустить» поддерживается только для отсортированного ввода в LINQ to Entities. Метод 'OrderBy' должен быть вызван перед методом 'Пропустить'.

После добавления следующего блока для сортировки данных пейджер работает правильно:

<riaControls:DomainDataSource.SortDescriptors>
    <riaData:SortDescriptor PropertyPath="Name" Direction="Ascending"/>
</riaControls:DomainDataSource.SortDescriptors>

Это действительно вызывало у меня горе - я все равно собирался отсортировать данные, но просто пробовал пейджер для самого простого случая (я перехожу с SL3 beta на SL3 а также от Mix 2009 Preview до июльского 2009 г. Preview .NET RIA Services) , и застрял на этом. Я не думаю, что обычные запросы Linq требуют порядка перед вызовом пропуска, но это похоже на случай с DataPager / DomainDataSource ...

Уф!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...