Вы можете получить все AddressType
объекты в списке, имеющие определенный идентификатор, используя Where
:
IEnumerable<AddressType> addressTypes = list.Where(a => a.AddressTypeId == 123);
Но если вы хотите, чтобы только один и только AddressType
имел определенный идентификатор, выможно использовать First
:
AddressType addressType = list.First(a => a.AddressTypeId == 123);
Это найдет первый AddressType
в списке с идентификатором 123 и выдаст исключение, если ничего не найдено.
Другой вариант заключается в использованииFirstOrDefault
:
AddressType addressType = list.FirstOrDefault(a => a.AddressTypeId == 123);
Он вернет null
, если не существует AddressType
с запрошенным идентификатором.
Если вы хотите убедиться, что в нем существует ровно один AddressType
список с желаемым идентификатором, который вы можете использовать Single
:
AddressType addressType = list.Single(a => a.AddressTypeId == 123);
Это вызовет исключение, если в списке не будет ровно одного AddressType
с идентификатором 123. Single
должен перечислить весьсписок делает его медленнее, чем First
.