我有一个类名称评论如下
public class Comment
{
public int Id { get; set; }
public string Name { get; set; }
public string Coment { get; set; }
}
我正在尝试做什么,我想显示评论列表和表单以在同一视图(索引)上添加评论,这就是我所做的,到目前为止,但我无法得到{{1这是我的索引视图
hint
但在这里我无法得到提示@model IEnumerable<GuestbookEntryApp.Models.Comment>
<h2>Index</h2>
<div id="CommentList">
<table>
<tr>
<th>Name</th>
<th>Comments</th>
</tr>
@foreach (var obj in Model)
{
<tr>
<td>@obj.Name</td>
<td>@obj.Coment</td>
</tr>
}
</table>
</div>
<br />
<div id="commentBox">
@Html.Partial("~/Views/Comments/_AddComment.cshtml", new ViewDataDictionary { Model = new GuestbookEntryApp.Models.Comment() })
</div>
这是我的控制器
@Html.LabelFor(x => x.Name)
还有其他方法可以做到这一点。 我想要这样
答案 0 :(得分:2)
创建一个视图模型,其中包含现有注释和新注释的属性
public class CommentVM
{
public IEnumerable<Comment> ExistingComments { get; set; }
public Comment NewComment { get; set; }
}
查看
@model YourAssembly.CommentVM
....
@foreach (var obj in Model.ExistingComments)
{
...
}
@using (Ajax.BeginForm("AddComment", .....}))
{
@Html.LabelFor(x => x.NewComment.Name)
....
并调整控制器以添加Bind.Prefix
属性
public ActionResult AddComment([Bind(Prefix="NewComment")]Comment _comment)
{
....