Вопрос о Linq To Sql - PullRequest
       36

Вопрос о Linq To Sql

0 голосов
/ 27 февраля 2009

Когда я пишу код, подобный приведенному ниже, я получаю следующее сообщение об ошибке: «Оператор запроса« ElementAtOrDefault »не поддерживается».

Как я могу это исправить?

Dim tmpQuestion As New UIData
    Dim strViews = From t In tmpQuestion.LU_QUESTIONs _
                      Where t.ID_QUESTION = Request.QueryString("IdQuestion") _
                      Select t
    Dim mtViews = strViews(0).MT_VIEWS

Ответы [ 3 ]

3 голосов
/ 27 февраля 2009

Вы пытались использовать FirstOrDefault (), затем проверьте, чтобы убедиться, что оно не равно нулю. Мой синтаксис VB, вероятно, подозрительный, но вы поняли.

Dim strView = (From t In tmpQuestion.LU_QUESTIONS _
                    Where t.ID_QUESTION = Request.QueryString("IdQuestion") _
                    Select t).FirstOrDefault()

Dim mtViews as ...
If Not strView Is Nothing
   mtViews = strView.MT_VIEWS
EndIf
3 голосов
/ 27 февраля 2009

Вы еще не спросили. strViews - это не набор результатов, это , это запрос. Вам действительно нужно получить некоторые данные.

var chosen = strViews.FirstOrDefault();
0 голосов
/ 27 февраля 2009

Я не эксперт в VB или LINQ2SQL, но разве это не имеет ничего общего с тем, что вы говорите strViews (0) .MT_VIEWS, хотя есть вероятность, что strViews может быть нулевым?

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