У меня есть код, прекрасно работающий на моей машине разработки, но при развертывании на сервере выбрасывается исключение ссылочной ссылки. Таким образом, я не могу пройти через код, но я прикрепил виновника. Но теперь я озадачен. Вот код. Вопрос ниже.IEnumerable не null, но вызов Count() приводит к исключению
Dim certs = From p In persons _
Select New Certificate(_
p.Value, _
New CertificateData.Seminar(thisEvent.Seminar.Name, _
thisEvent.StartDate.Value, _
thisEvent.EndDate.Value, _
thisEvent.Venue.City, _
thisEvent.Venue.State, _
New CertificateData.Instructor(_
staffMember.Name, _
staffMember.Titles, _
instrSignatPath))) _
With {.CertificateId = p.Key}
lblMessage.Text = CStr(certs Is Nothing)
lblMessage.Text = lblMessage.Text + "<br />" + CStr(certs.Count())
В коде выше указаны словарный запас пользовательского класса, а certs относится к типу IEnumerable. Теперь вот предел ... Первая строка, которая устанавливает метку, возвращает False, поэтому certs не является нулевым. Но вторая строка выбрасывает исключение нулевой ссылки. Как это возможно?
Хорошая идея! ..... – Marcel
Спасибо. Ты был прав. thisEvent.Venue был null – Antony
@Draak, спасибо за отзыв. Отсроченное исполнение нередко приводит к тому, что вещи происходят по-другому, чем первоначально предполагалось программистом, и поэтому я всегда рекомендую спросить себя, может ли отложенное выполнение быть причиной ваших проблем при работе с проблемами LINQ. – Lucero