Вам необходимо добавить вызов к Single()
- в противном случае он возвращает последовательность клиентов.
В то же время здесь нет необходимости использовать выражение запроса. Будет проще использовать точечную запись:
Customer customerWithLinq = customerSet.Where(c => c.FirstName == "Joe")
.Single();
На самом деле, вы можете сделать это еще проще, потому что есть перегрузка Single()
для принятия предиката:
Customer customerWithLinq = customerSet.Single(c => c.FirstName == "Joe")
Это условие ошибки, если не найдено ни одного совпадения? Если нет, вы можете использовать First()
вместо Single()
.
РЕДАКТИРОВАТЬ: Как указал Гарри, если могут быть нет результаты, которые вы можете захотеть SingleOrDefault()
или FirstOrDefault()
- оба из вернуть null
, если не найдено ни одной записи.