Linq Преобразование анонимного объекта в объект сущности путем выбора - PullRequest
0 голосов
/ 26 мая 2020
var reassignForms = _formQueryRepository.WithRelatedEntities()
            .Where(x => x.Id == formId && x.SchoolId == schoolId)
            .Select(y => y.FormUsers.Where(m => m.CanEdit).Select(z => new ReassignFormDTO
            {
                Name = z.UserProfile.FullName,
                Id = z.UserProfile.Id,
                Email = z.UserProfile.Email,
                Role = z.UserProfile.UserRole,


            }));

Я хочу преобразовать его в ReassignFormDTO, но каким-то образом он возвращает объект, который я не могу преобразовать. Я хочу, чтобы это был прямой объект, а не [0] .objects.

enter image description here enter image description here

1 Ответ

0 голосов
/ 26 мая 2020

Вы можете использовать .FirstOrDefault(), тогда он вернет первую сущность из запроса linq. Согласно окну отладки у вас есть два объекта ReassignFormDTO, и кажется, что вы хотели бы получить только один.

Расскажите подробнее, чтобы мы могли помочь. Не уверен, поможет ли вам мой предыдущий ответ.

РЕДАКТИРОВАТЬ: я не заметил второго выбора внутри вашего оператора. Согласно комментариям .SelectMany(z => z) должен вам помочь.

...