У меня есть модель под названием «Видео», в которой есть ряд комментариев о комментариях и комментариев. Я создал следующие циклы в моем представлении, чтобы возвращать детали комментариев обратной связи и соответствующие ответы комментариев обратной связи, но хотя число Model.SelectedScreecast.Feedbacks равно 3, я вижу, что есть 3 записи обратной связи, итерация входит в цикл для 4-й раз, и я получаю ошибку ссылки объекта. Мой код выглядит следующим образом:Обозначение числа свойств модели на странице бритвы, возвращающее неправильное значение
@foreach (var comment in Model.SelectedScreencast.Feedbacks)
{
<li class="comment">
<div class="avatar"> <img src="@Url.Content("~/Images/icons/avatar.png")" width="50" height="50" alt="Avatar" /> </div>
<div class="comment-meta">
<h5 class="author"><a href="#">John Doe</a> - <a href="#" class="comment-reply-link">Reply</a></h5>
<p class="date">January 06, 2011</p>
</div>
<div class="comment-body">
<p>@comment.FeedbackString</p>
</div>
<ul class="children">
@foreach (var reply in @comment.FeedbackReplys)
{
<li class="comment">
<div class="avatar"> <img src="@Url.Content("~/Images/icons/avatar.png")" width="50" height="50" alt="Avatar" /> </div>
<div class="comment-meta">
<h5 class="author"><a href="#">John Doe</a> - <a href="#" class="comment-reply-link">Reply</a></h5>
<p class="date">January 06, 2011</p>
</div>
<div class="comment-body">
<p>reply string</p>
</div>
</li>
}
</ul>
</li>
}
Я могу вернуть ожидаемую строку при помощи следующего кода, хотя это без необходимого стиля для страницы.
@foreach (var comment in Model.SelectedScreencast.Feedbacks)
{
<li>@comment.FeedbackString</li>
foreach (var reply in @comment.FeedbackReplys)
{
<li>@reply.FeedbackReplyString</li>
}
}
Что может привести к этому, чтобы оценить как объект не указывает на экземпляр объекта, когда она установлена через отладочные проверки и при использовании блока кода выше. Любая помощь будет принята с благодарностью.
Вы уверены, что вы не установили четвертую запись как null? Причина в том, что ваш foreach подсчитывает 4 записи вместо 3. Попробуйте проверить вид в отладчике и посмотреть, что такое содержимое 'Model.SelectedScreencast.Feedbacks'. –
Я проверил в debug и возвратил [0] [1] [2] feebacks с общим количеством отсчетов равным 3. Я не могу понять, почему он читает это как четыре – Jay
То же самое касается 'comment.FeedbackReplys'? –