首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >razor页中返回错误值的模型属性的Foreach计数

razor页中返回错误值的模型属性的Foreach计数
EN

Stack Overflow用户
提问于 2013-06-28 19:34:41
回答 1查看 1.5K关注 0票数 0

我有一个名为视频的模型,它有一系列附加的反馈评论和反馈评论回复。我已经在我的视图中创建了以下循环,以返回反馈评论和相关反馈评论回复的详细信息,但是尽管Model.SelectedScreecast.Feedbacks计数为3,但我可以看到有3条反馈记录,迭代第四次进入循环,并且收到对象引用错误。我的代码如下:

代码语言:javascript
复制
@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>
        }          

当使用下面的代码时,我能够返回预期的字符串,尽管这没有对页面进行必要的样式设置。

代码语言:javascript
复制
@foreach (var comment in Model.SelectedScreencast.Feedbacks)
        {
           <li>@comment.FeedbackString</li>

             foreach (var reply in @comment.FeedbackReplys)
             {
               <li>@reply.FeedbackReplyString</li>
             }    
}

当通过调试检查设置对象并使用上面的代码块时,可能会导致此对象的计算结果为未设置为对象实例的对象。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2013-06-28 22:25:05

你的前额有问题。

@foreach (var reply in @comment.FeedbackReplys)

应该是:@foreach (var reply in comment.FeedbackReplys)

甚至:foreach (var reply in comment.FeedbackReplys)

Razor语法以@字符开始代码块,并且不需要显式关闭代码块。因此,第二个@是冗余的,第二个@foreach @也可能是冗余的。

不确定它是否会,但希望这能解决你的问题!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17363793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档