2016-04-19 3 views
0
Dim sipff As SystemInfoPropertiesForForm = listSystemInfoPropertiesForForm.Find(Function(f) f.ShowFieldPropertyTypeId = CInt(SystemInfoPropertyIds.ShowMilestone)) 

SystemInfoPropertiesForForm - это сложный тип со всеми элементами, допускающими нулевое значение.List.Find throwing Nullable object должен иметь ошибку значения

CInt (SystemInfoPropertyIds.ShowMilestone) = 900

listSystemInfoPropertiesForForm имеет 10 элементов

Любая идея?

+0

Что вы .net версии? – har07

+0

Какой тип данных 'f'? Какой тип данных 'f.ShowFieldPropertyTypeId'? какой тип данных «SystemInfoPropertyIds.ShowMilestone»? – jmcilhinney

+0

Моя версия .Net 4.0. «f» - это псевдоним для списка «listSystemInfoPropertiesForForm». f.ShowFieldPropertyTypeId является целым числом и SystemInfoPropertyIds.ShowMilestone = string, который является типом, отлитым от int. Его значение будет 900 –

ответ

0

Fixed это, используя приведенный ниже код

Dim sipff As SystemInfoPropertiesForForm = listSystemInfoPropertiesForForm.Find(Function(f) f.ShowFieldPropertyTypeId.HasValue AndAlso f.ShowFieldPropertyTypeId.Value = CInt(SystemInfoPropertyIds.ShowMilestone)) 
Смежные вопросы