Запрос Linq, возвращающий значение из другого класса - PullRequest
1 голос
/ 28 апреля 2011

Просто быстрый вопрос о LINQ, я хочу использовать значение из возвращенного набора данных, чтобы найти значение и вернуть его.Строка, с которой я борюсь, это .ViewingNotes = Новый просмотр (pt.ProspectId) .GetViewings (). Columns (7) .ToString ().Возможно ли это?

    With BusinessLayerObjectManager.Context
        Return (From p As [Property] In .PropertySet
                Join pt As Prospect In .Prospects On pt.Property.propertyID Equals p.propertyID
                Where (p.Development.DevelopmentID = devId)
                Select New DevelopmentList With {
                    .Apartment = p.propertyApartment + " " + p.Development.Name,
                    .PropertyId = p.propertyID,
                    .Client = pt.Client.clientFirstname + " " + pt.Client.clientLastname,
                    .ClientId = pt.Client.ClientID,
                    .ProspectiveDate = pt.prospectiveDate,
                    .ProspectiveStatus = pt.prospectiveStatus,
                    .Agent = pt.Client.userID,
                    .ViewingNotes = New Viewing(pt.ProspectId).GetViewings().Columns(7).ToString(),
                    .PropertyStatus = ""
                }).ToList()
    End With

Заранее спасибо.

1 Ответ

0 голосов
/ 28 апреля 2011

Я подозреваю, что нет, когда компилятор попытается преобразовать бит SQL для просмотра (pt.ProspectId) .GetViewings (). Columns (7) .ToString () в SQL, он будет очень запутан.Вам нужно будет сделать это в 2 этапа.

Первый выбор Linq-to-entity сначала возвращает pt.ProspectId с .ToList() без изменений.Затем используйте результаты, чтобы сделать еще несколько linq, linq-to-linq, если хотите, где вы можете выполнить поиск с помощью лямбды.

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