我有一个局部视图,如下所示,其中我有第一个foreach循环的帖子和另一个foreach为该帖子添加评论。但运行时错误为
分析器错误消息:“@”后出现意外的“foreach”关键字 字符。进入代码后,您不需要为构造添加前缀 喜欢“foreach”和“@”。
但是大括号是完美的。
@model Network.Models.ViewPostModel
@using (Html.BeginForm("AddPost", "Network"))
{
@Html.TextBoxFor(model => model.addpost.Content, new { @class = "textboxstyle"})
<br/>
<button type="submit">Add Post </button>
<br/><br/>
@foreach(var post in Model.Post)
{
<br/>
<b>Posted by :</b> @post.Username
<span> @post.Content </span>
@foreach(var comment in Model.Comments)
{
<br/>
@comment.Content
<b>Comented by :</b> @comment.username
<br/><br/>
}
@Html.TextAreaFor(model => model.addcomment.Content)
<button type="submit">Add Comment </button>
}
}
我试过一个foreach循环正在工作,但不是两个。我的强类型局部视图的模型类如下
public class ViewPostModel
{
public List<Post> Post { get; set; }
public List<Comment> Comments { get; set; }
public List<UserFriend> Userfriends { get; set; }
public Post addpost { get; set; }
public Comment addcomment { get; set; }
}
请检查我的错误是什么?
谢谢, michaeld
答案 0 :(得分:1)
您似乎在fieldset
内foreach
并且您正在关闭它。
我见过剃刀类似的问题。例如查看这篇文章
The foreach block is missing a closing "}" character
这对我来说没有意义 - 你应该把第一个/开放移到我认为的循环之外。