Похоже, у вас есть запрос, который может вернуть несколько результатов, но вы пытаетесь присвоить его переменной с одним значением .
Возможно, вам просто нужноиспользуйте что-то вроде:
currentUser.Groups.Add(defaultGroup.First)
Возможные варианты:
First()
- допускает несколько результатов и возвращает первый;выдаст исключение, если его нет FirstOrDefault()
- разрешает несколько результатов и возвращает первое;вернет значение по умолчанию для типа элемента (например, null
), если нет результатов Last()
- разрешает несколько результатов и возвращает последний;выдаст исключение, если его нет LastOrDefault()
- разрешает несколько результатов и возвращает последний;вернет значение по умолчанию для типа элемента (например, null
), если нет результатов Single()
- ожидает ровно один результат;если нет результатов или многократных результатов, выдается исключение
Теперь, когда вы показали запрос, похоже, что вы, вероятно, должны использовать соединение, а не вложенный запрос.Я не в восторге от синтаксиса запросов VB, но в C # вам может понадобиться:
var defaultGroupQuery =
from group in context.Groups
join user in context.User0 on group.AdminID equals user.UserID
where user.Name == "Administrator"
select group;