RIA Services error - PullRequest
       21

RIA Services error

1 голос
/ 07 января 2011

У меня есть domaindatasource с дескриптором фильтра.Это для текстового поля, используемого для поиска данных.он отфильтровывает только те имена, которые начинаются с текста.Я получаю сообщение об ошибке всякий раз, когда текст вводится в поле поиска.Часть сообщения об ошибке гласит:

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

Я не могу углубиться в него и найти оператор linq, используемый фильтром только для исходного запроса.Может кто-нибудь сказать мне, где этот оператор linq или как я могу его найти?

ОБНОВЛЕНИЕ

Это полное сообщение об ошибке:

Сведения об ошибке веб-страницы Пользовательский агент: Mozilla / 4.0 (совместимый; MSIE 8.0; Windows NT 5.2; Trident / 4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; InfoPath.2; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E) Отметка времени: чт, 6 января 2011 г. 20:45:30 UTCСообщение: необработанная ошибка в приложении Silverlight Код приложения: 4004 Категория: ManagedRuntimeError Сообщение: System.Windows.Ria.DomainException: Произошла ошибка при загрузке данных через запрос «GetEmployeesView» в DomainContext типа «AllocationContext», и ошибка не была обработана.Если ожидается эта ошибка, то вы должны обработать событие LoadedData в DomainDataSource и вызвать LoadedDataEventArgs.MarkErrorAsHandled (), чтобы избежать этого исключения.Ошибка операции загрузки для запроса 'GetEmployeesView'.Метод «Пропустить» поддерживается только для отсортированного ввода в LINQ to Entities.Метод «OrderBy» должен быть вызван перед методом «Пропустить».---> System.Windows.Ria.DomainOperationException: операция загрузки не выполнена для запроса 'GetEmployeesView'.Метод «Пропустить» поддерживается только для отсортированного ввода в LINQ to Entities.Метод «OrderBy» должен быть вызван перед методом «Пропустить».--- Конец внутренней трассировки стека исключений --- в System.Windows.Ria.OperationBase.InvokeCompleteAction () в System.Windows.Ria.OperationBase.Complete (Ошибка исключения) в System.Windows.Ria.LoadOperation.Complete (Исключениеошибка) в System.Windows.Ria.DomainContext.CompleteLoad (IAsyncResult asyncResult) в System.Windows.Ria.DomainContext. <> c_ DisplayClass17.b _13 (Объект) Строка: 56 Сим: 13 Код: 0

GetEmployeesView - это запрос службы RIA domian, который возвращает список Employees из сущности EmployeesView (созданной из представления SQL).

1 Ответ

0 голосов
/ 19 июня 2012

Ваши методы RIA должны возвращать коллекцию, которая реализует IQueryable. DomainDataSource формирует свои запросы загрузки, сортировки и фильтрации за кулисами, используя LINQ Take (), Skip () и так далее. Самый простой способ «увидеть» эти запросы, если вы заинтересованы, - запустить Fiddler и посмотреть на запрос, когда он идет по проводам.

...