Ошибка, метод, не поддерживаемый LINQ к Объектам

Почему я получаю эту ошибку:

'Единственный' метод не поддерживается LINQ к Объектам. Рассмотрите использование метода 'Сначала' вместо этого.

           public ActionResult Details(int id)
Line 27:   {              
             var result = (from d in _db.MovieSet
Line 29:     where d.Id == id
Line 30:     select d).Single();
            //
            //
           } 

Безопасные компиляции кода, но только повреждаются, если вызов выполняется к соответствующему разделу. Я плохо знаком с LINQ, поэтому не знайте, какие методы для LINQtoSQL или LINQtoEntities. Это означает больше ошибок! Мы не можем помнить все методы этот путь.

Мой вопрос, если существуют ограничения к методам, применимым к определенным типам / сценарии, почему они появляются в Intellisense?

Править: Какое-либо обходное решение / техника, полезная, чтобы иметь идею, если Вы поддерживаетесь?

9
задан AndreyAkinshin 23 February 2010 в 10:53
поделиться

3 ответа

Microsoft имеет полный список поддерживаемых и неподдерживаемых методов в LinQ к объектам. Вот куда пойти, чтобы узнать эту информацию.

Вы заметите, что методы один и методы SingleOdefault на самом деле перечислены как «не поддерживаются» в разделе «Несодержащие» в разделе «Методы пейджинга».

Как отметил Джареда, компилятор не знает во время компиляции, каким провайдером вы используете, так что у него нет способа обеспечить обеспечение обеспечения безопасности временных методов продвижения, которые провайдеры могут или не могут реализовать. Вам придется вместо этого придется полагаться на документацию.

6
ответ дан 4 December 2019 в 20:23
поделиться

Я использую Perl. Я бы тоже предложил это. Что касается языков сценариев базы данных, которые предлагает Postgres: PL / Perl , намного более развит, чем PL / PHP , а PL / Perlu приносит CPAN в Postgres.

У вас все еще есть PL / SQL (отлично подходит для небольших вещей), а PL / PGSQL (имеет его приложения тоже).

К сожалению, поддержка CSV на Postgres является рода Crufty, я собираюсь начать проект Perl очень скоро, хотя это исправить (возможно, в течение следующего месяца). В настоящее время вам почти необходимо использовать PGLoader, который (IMHO) имеет синтаксис KLUGY. Perl имеет текст :: CSV_XS , который является благополучием для обработки CSV.

Perl Исторически проделал доступ к базе данных и использовать намного лучше, чем PHP. Я все еще верю, что это хороший путь впереди PHP. PHP до сих пор не хватает асинхронной структуры и довольно ограничен в Интернете. Сильные очки PHP, как правило, гораздо более сосредоточены вокруг нетехнических особенностей языка, а именно кривой обучения, а также общую портативность хоста.

-121--3978049-

В случае LinqtoSQL / объектов запросы все разбиты на деревьями выражения, которые затем передаются в API поставщика. Поставщики не могут предоставить информацию о компиляции о деревьях, которые они делают или не поддерживают, потому что нет синтаксической разности. Единственный выбор для них для предоставления данных времени выполнения.

Например, один раз в форме дерева выражения, как единое, так и сначала отображается в качестве анализа методика .

6
ответ дан 4 December 2019 в 20:23
поделиться

К сожалению, это еще одно показание как r расходных незвательств EF и несоответствия , несовмешительно импедансов объекта .

Документация - ваш друг, если вы решите пойти по этому маршруту.

-1
ответ дан 4 December 2019 в 20:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: