Вы можете получить все 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
.